Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: aiuto su query

  1. #1
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916

    aiuto su query

    codice:
    SQLDIFFDATA = SQLDIFFDATA&" WHERE __aldSERDDTConsegna.DataDocumento >= '2010/06/14' AND __aldSERDDTConsegna.DataDocumento <= '2010/06/16'"
    SQLDIFFDATA = SQLDIFFDATA&" AND (__aldSERDDTConsegna.DataDocumento > __aldSERDDTConsegna.DataInizioNoleggio"
    SQLDIFFDATA = SQLDIFFDATA&" OR (__aldSERDDTConsegna.DataInizioNoleggio <> '01/01/1900' AND __aldSERDDTConsegna.Paziente LIKE '%c-dep%'))"
    questa query funziona tranne che per la condizione dopo OR.
    che mi fa vedere tutti i record con campo:

    DataInizioNoleggio <> '01/01/1900' AND __aldSERDDTConsegna.Paziente LIKE '%c-dep%'

    mentre dovrebbe non farmeli vedere .

    Sbaglio a scriverla?
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  2. #2
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    l'OR vincola la WHERE a selezionare i record dove una delle due condizioni (a destra o sinistra dell'OR) sono valide.
    Se vuoi escludere dalla selezione anche quei record dovresti usare un AND come ulteriore criterio restrittivo.
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  3. #3
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da supermac
    l'OR vincola la WHERE a selezionare i record dove una delle due condizioni (a destra o sinistra dell'OR) sono valide.
    Se vuoi escludere dalla selezione anche quei record dovresti usare un AND come ulteriore criterio restrittivo.
    mettendo and non più nessun risultato, mentre dovrei trovarmene almeno 3 di record.
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  4. #4
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    se quelli sono campi data, prova a indicare i criteri così (ad esempio)
    __aldSERDDTConsegna.DataDocumento >= #2010/06/14#

    e scrivi 1900/01/01
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  5. #5
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da supermac
    se quelli sono campi data, prova a indicare i criteri così (ad esempio)
    __aldSERDDTConsegna.DataDocumento >= #2010/06/14#
    sono su sqlserver e poi se tolgo solo la terza riga del codice che ho postato è tutto corretto.
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  6. #6
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    1900/01/01?
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  7. #7
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da supermac
    1900/01/01?
    in effetti hai ragione.

    purtroppo però il rusultato non è cambiato.

    se lascio OR visualizzo comunque i record, se metto AND non ne vedo nessuno.
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

  8. #8
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    dunque se capisco bene, ti dovrebbe selzionare i record in un intervallo di date definito dalla datadocumento, dove la datadocumento è > della datainizionoleggio oppure dove il paziente LIKE qualcosa, giusto?

    la specificazione della datainizionoleggio <> 1900/01/01 dovrebbe essere inutile, tanto hai già limitato l'intervallo temporale alle prime due date della datadocumento... try to remove it
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  9. #9
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    no forse ho detto una mezza cavolata, però capisco che hai una serie di record con datainizionoleggio 1900/01/01 che non vuoi vedere in ogni caso...
    allora potrebbe essere una cosa simile a questa?

    SQLDIFFDATA = SQLDIFFDATA&" WHERE DataDocumento >= '2010/06/14' AND DataDocumento <= '2010/06/16' AND DataInizioNoleggio <> '1900/01/01' AND (DataDocumento > DataInizioNoleggio OR Paziente LIKE '%c-dep%')"
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

  10. #10
    Utente di HTML.it L'avatar di yro
    Registrato dal
    Sep 2003
    Messaggi
    2,916
    Originariamente inviato da supermac
    no forse ho detto una mezza cavolata, però capisco che hai una serie di record con datainizionoleggio 1900/01/01 che non vuoi vedere in ogni caso...
    allora potrebbe essere una cosa simile a questa?

    SQLDIFFDATA = SQLDIFFDATA&" WHERE DataDocumento >= '2010/06/14' AND DataDocumento <= '2010/06/16' AND DataInizioNoleggio <> '1900/01/01' AND (DataDocumento > DataInizioNoleggio OR Paziente LIKE '%c-dep%')"
    il concetto è quello, ma anche con la tua where li vedo tutti comunque ...
    E se avessi il dono della profezia e conoscessi tutti i misteri e tutta la scienza, e possedessi la pienezza della fede così da trasportare le montagne, ma non avessi la carità, non sono nulla.

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.