|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: May 2013
Messaggi: 1
|
[QUERY SQL] inserimento date
Colgo l'occasione per salutare tutti essendomi appena inscritto!
arrivo subito al sodo: Ho una serie di date d/m/y importate in una colonna su postgresql, ogni data puo ripetersi piu di una volta, riga per riga e sono raggruppate e in ordine. 01/01/2011 01/01/2011 02/01/2011 03/01/2011 03/01/2011 04/01/2011 facendo una query: select count (*) as nuova_colonna, data from nome_tabella group by data order by data ho aggiunto un contatore delle date doppie (nella nuova colonna) e le ho rese quindi ripetibili una sola volta, avendo: 01/01/2011 --> 2 02/01/2011 --> 1 03/01/2011 --> 2 04/01/2011 --> 1 Fino qui nessun problema! ma il punto critico che mi sta mandando al manicomio è il seguente: Filtrando le date e associandole ad un codice (presente in un'altra colonna) (where codice = 4) esse non risulteranno più progressive, ma naturalmente saranno visualizzate solo le date associate al codice di appartenenza! quindi: 01/01/2011 -->2 04/01/2011 -->1 06/01/2011 -->1 ecco vorrei quindi inserire tra le date quelle mancanti e naturalmente con il valore nella nuova_colonna uguale a 0! 01/01/2011 --> 2 02/01/2011 --> 0 03/01/2011 --> 0 04/01/2011 --> 1 05/01/2011 --> 0 06/01/2011 --> 1 Spero di essermi spiegato bene! Ringrazio anticipatamente tutti aspettando una vostra risposta! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: May 2007
Città: Milano
Messaggi: 7103
|
Risolvere usando un coalesce o un case?
Nel senso se sono del codice interessato sommo 1 altrimenti metto a 0. Usi un *as* sulla query e poi fai un order by su quella.. Non so se mi spiego bene.. Inviato con il mio Xperia P
__________________
Apple Watch Ultra + iPhone 15 Pro Max + Rog Ally + Legion Go Ultima modifica di The_ouroboros : 23-05-2013 alle 17:42. |
|
|
|
|
|
#3 |
|
Member
Iscritto dal: Mar 2009
Messaggi: 257
|
ma non basta fare una outer join? Il risultato di una query left outer join (o semplicemente left join) per le tabelle A e B contiene sempre tutti i record della tabella di sinistra ("left") A, mentre vengono estratti dalla tabella di destra ("right") B solamente le righe che trovano corrispondenza nella regola di confronto della join. Questo significa che se la clausola ON trova 0 (zero) righe in B, la join mostrerà una riga risultante con valore NULL in tutte le colonne corrispondenti al risultato per le colonne di B.
claro no? |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 08:11.


















