Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 11
  1. #1

    La query + strana del mondo...

    Ecco la cosa più strana che mi sia capitata.

    Database ACCESS con una tabella al cui interno ci sono questi dati

    Id | Cliente | Sezione
    117 | Aaaaaa Society | advertising
    118 | Aaaaaa Society | advertising
    119 | Aaaaaa Society | advertising
    120 | Aaaaaa Society | advertising

    Bene se faccio una query dentro access del tipo "SELECT TOP 1 * FROM Lavori WHERE Sezione = 'advertising' ORDER BY Cliente ASC" mi dà un solo record (id = 120). Se nei quattro record sopra sostituisco il clinete "Aaaaaa Society" con in cliente "Aaaaaa Soc" la stessa query mi mostra 4 record.

    Provare per credere.....O forse sto impazzendo???

  2. #2
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Si è giusto perché non vi è discontinuità e non sa scegliere. ggiungi un campo sicuramente diverso per tutti.

    codice:
    SELECT TOP 1 * FROM Lavori WHERE Sezione = 'advertising' ORDER BY Cliente, ID"
    Roby

  3. #3
    Va bene.
    Ma perchè se scrivo un nome di un cliente + breve (max 10 caratteri) invece mi mostra 4 record???
    Mi piacerebbe capirne la logica

  4. #4
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Non ho capito. Mi fai l'esempio concreto?

    Roby

  5. #5
    Cioè il problema è questo. Ho notato che se nel campo clienti scrivo qualcosa che supera i 10 caratteri la query mi da un record, sotto i 10 caratteri me ne da 4 ossia tutti.
    Tu suggerisci "non vi è discontinuità e non sa scegliere". Ma a rigor di logica se non sa "scegliere", non dovrebbe sapere "scegliere" neanche se il nome del cliente fosse semplicemente una lettera??
    Invece lo fa.

    Poi suggerisci "Aggiungi un campo sicuramente diverso per tutti". Cosa intendi??

  6. #6
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    1) Fammi un esempio
    2) Te l'ho scritto cosa intendo, non vedi che ho aggiunto alla query l'ordinamento per ID?

    Roby

  7. #7
    1) l'esempio l'ho fatto all'inizio:

    Id | Cliente | Sezione
    117 | Aaaaaa Society | advertising
    118 | Aaaaaa Society | advertising
    119 | Aaaaaa Society | advertising
    120 | Aaaaaa Society | advertising

    "SELECT TOP 1 * FROM Lavori WHERE Sezione = 'advertising' ORDER BY Cliente ASC" mi dà un solo record (id = 120). Se nei quattro record sopra sostituisco il cliente "Aaaaaa Society" con in cliente "Aaaaaa Soc" o "pippo" la stessa query mi mostra 4 record.

    2) Con l'ordinamento per id non funziona ugualmente.

  8. #8
    Moderatore di ASP e MS Server L'avatar di Roby_72
    Registrato dal
    Aug 2001
    Messaggi
    19,559
    Ho fatto una prova ed a me funziona. Dopo pranzo se vuoi ti mando il mio db.

    Roby

  9. #9

  10. #10

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.