2010-02-25 7 views
5

Est-ce possible? Utilisation de SQL Server 2005 .......T-SQL UNION Sur 3 tables?

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

Avez-vous essayé d'exécuter ce déjà? Des problèmes avec ça? Qu'est-ce qui n'a pas fonctionné? – shahkalpesh

Répondre

7

Tant que les colonnes sont les mêmes dans les trois tableaux, mais vous pouvez utiliser UNION ALL pour assurer les doublons sont inclus.

+2

Et devrait spécifier les noms de colonnes plutôt que d'utiliser '*'. – RedFilter

4

Quand vous dites

colonnes sont les mêmes

cela signifie,

nombre de colonnes et types de données et leur longueur et leur ordre

devrait être le même.

UNION

comprendra les doublons qu'une seule fois dans le résultat et

UNION ALL

comprendra tous les enregistrements en double.

+0

Merci, c'est exactement ce dont j'avais besoin. La clarification sur les «colonnes sont les mêmes» a été très utile. – ShiningLight

1

afin d'inclure les doublons, vous devez utiliser UNION ALL au lieu de UNION

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