PDA

Visualizza la versione completa : [SQL] Query da più tabelle ordinate per data


WillyLord
16-02-2007, 18:33
Ciao a tutti,
ho 3 tabelle identiche ma con dati diversi.

Tra i campi c'è anche un campo di tipo "data-ora" e un campo "evento_accaduto".

Le tabelle si chiamano: tabella1, tabella2, tabella3.

Devo fare una query che mi estragga tutti i dati del campo "evento_accaduto" di tutte e tre le tabelle e le ordina per il campo "data-ora".

Potete aiutarmi? Grazie

Dr_House
16-02-2007, 20:52
Select evento_accaduto
from tabella1
order by ora
UNION
Select evento_accaduto
from tabella2
order by ora
Select evento_accaduto
from tabella3
order by ora;


Ciao ciao :)

WillyLord
16-02-2007, 21:22
Scusami, ma la UNION serve ad una sola parte?

...oppure hai sbagliato a scrivere e devo inserirla ogni volta?

Ma in questo modo vengono ordinate tutte in modo complessivo, oppure mi fa la [prima ordinata] + [seconda ordinata] + [terza ordinata].

Grazie mille.

Dr_House
17-02-2007, 02:18
Si forniscono quel risultato.

la soluzione sarebbe creare una vista, ma non puoi ordinarli in quel caso ottenendo lo stesso risultato


Potresti fare un Full Outher Join ma non sono implementati su tutti i DB..

WillyLord
18-02-2007, 03:09
Infatti è proprio con una join che vorrei risolvere.

Qualcuno può aiutarmi?

njno
18-02-2007, 22:42
Se la clausola order by la metti alla fine di tutto, ti dovrebbe restituire l'ordinamento completo di tutte e tre le tabelle. Ho fatto la prova e funziona.

Spero ti sia utile

WillyLord
19-02-2007, 01:26
Sulla base delle tre tabelle che ho,
potresti suggerirmi la query precisa?

Grazie.

oregon
19-02-2007, 07:35
Qualcosa come

SELECT dataora,evento
FROM Tabella1
UNION
SELECT dataora,evento
FROM Tabella2
UNION
SELECT dataora,evento
FROM Tabella3
ORDER BY dataora

Loading