2010-02-25 4 views
5

Ist das möglich? mit SQL Server 2005 .......T-SQL UNION auf 3 Tabellen?

SELECT * 
FROM Data0304 
UNION 
SELECT * 
FROM Data0506 
UNION 
SELECT * 
FROM Data0708 
+2

Haben Sie versucht, läuft dies bereits UNION zu benutzen? Irgendwelche Probleme damit? Was hat nicht funktioniert? – shahkalpesh

Antwort

7

Solange die Spalten die gleiche in allen drei Tabellen sind, aber Sie könnten UNION ALL verwenden möchten Duplikate, um sicherzustellen, sind enthalten.

+2

Und sollte die Spaltennamen anstelle von '*' angeben. – RedFilter

4

Wenn Sie sagen,

Spalten gleich sind

das heißt,

Anzahl der Spalten und Datentypen und ihre Längen und deren Reihenfolge

sollte gleich sein.

UNION

werden doppelte Datensätze enthalten nur ein einziges Mal in Folge und

UNION ALL

werden alle doppelten Datensätze enthalten.

+0

Danke, das ist genau das, was ich brauchte. Die Klarstellung über "Spalten sind die gleichen" war sehr hilfreich. – ShiningLight

1

, um doppelte Datensätze zu enthalten, die Sie haben ALL statt UNION

SELECT * 
FROM Data0304 
UNION ALL 
SELECT * 
FROM Data0506 
UNION ALL 
SELECT * 
FROM Data0708