Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413

    order by su date senza considerare i valori NULL

    ciao a tutti...

    e possibile in SQL server fare una query, ordinarla per data ASC senza ordinare i campi che hanno la data a NULL, perchè altrimenti me li ritrovo in testa alla pagina (e io li vorrei in coda, perchè non avendo la data non hanno rilevanza)

    è possibile?

    grazie

  2. #2
    escludi i record che hanno campo data Null
    prude il dito, lui sdraiato
    ha giocato a guardie e ladri col ladro sbagliato

  3. #3
    Utente di HTML.it L'avatar di albis
    Registrato dal
    May 2002
    Messaggi
    912
    codice:
    select * from tabella where CampoData is not null order by CampoData
    Forza la magica ROMA

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    e non posso...

    perchè è un elenco di clienti con scadenza e comunque esistono dei clienti che non hanno scadenza.

    quindi essendo una stampa di tutti i clienti non posso escludere quelli senza scadenza.

    Devo poterli visualizzare tutti ma quelli che hanno la scadenza vanno ordinati per ASC

  5. #5
    dovresti sostituire tutti i null con una data altissima - 31.12.2999 ad esempio

    oppure usi una union. prima tutte le date piene (ordinate) poi tutte le null

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    interessante...ma quante ne sai optime...

    di preciso una union cosa fa?

  7. #7
    Una union "unisce" due query.
    La cosa importante è che il numero delle colonne delle due query, dev'essere corrispondente, altrimenti la union non ti funziona.

    Ecco l'esempio che dovrebbe servire a te:

    codice:
      select t1.colonna1, t1.colonna2, t1.colonna3
        from tabella1 t1
       where t1.campo_data is not null
       order by t1.campo_data desc
    UNION
      select t1.colonna1, t1.colonna2, t1.colonna3
        from tabella1 t1
       where t1.campo_data is null
    Provare paura per un qualcosa che ti possa capitare nel futuro non ti evita quell'evento,ti fa soltanto vivere un presente sbagliato!

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    scusami ma non riesco a farla funzionare.

    In sql server se metto la clausola order by prima della parola UNION mi da errore.

    Funziona invace se la metto al fondo della query, cosi:
    codice:
     select t1.colonna1, t1.colonna2, t1.colonna3
        from tabella1 t1
       where t1.campo_data is not null
      UNION
      select t1.colonna1, t1.colonna2, t1.colonna3
        from tabella1 t1
       where t1.campo_data is null 
    
    order by t1.campo_data desc
    ma il risultato non è quello che voglio

    help...

  9. #9
    cosa viene fuori, e cosa invece vorresti. chi siamo, da dove veniamo, dove andiamo?

  10. #10
    Utente di HTML.it
    Registrato dal
    Apr 2003
    Messaggi
    1,413
    ok...

    allora, io vorrei ordinare i clienti secondo un campo numerico in ordine crescente.

    ci sono pero clienti che hanno questo campo impostato a NULL.

    Vorrei comunque che questi ultimi comparissero in fondo alla lista ordinata

    Facendo la union (nel modo in cui ho riscritto quella consigliatami da maximum) ottengo sempre in cima quelli con il valore NULL e poi in coda la lista ordinata in ordine crescente.

    E cosi non deve essere.

    Come posso fare?

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.