J'ai 2 tables (table1 et table2). P>
TABLE-TABLE1 & TABLE2 a les mêmes noms de colonnes, mais TABLE2 a quelques colonnes supplémentaires que TABLE1. P>
noms de colonne comme suit: p>
J'essaie d'obtenir les données des deux tables dans 1 GridView. P>
ive essayé d'utiliser un syndicat tout mais il jette une erreur car les colonnes ne sont pas identiques. P>
est-il possible de rejoindre toutes ces colonnes en 1 grilleView et d'afficher les données en conséquence? P>
par exemple: nom, nom de famille, âge, sexe, hauteur, date d'accès à l'origine p>
Si oui, à quoi ressemblerait ma requête SQL? P>
PS: J'ai 70 colonnes dans chaque table afin de sélectionner individuellement cela ne va pas fonctionner p>
3 Réponses :
Il suffit de mettre des valeurs nulles dans les colonnes manquantes et d'utiliser comme mentionné par @TheMpaler Il n'y a aucun moyen de sélectionner les colonnes à la main . p> p> union tout code>
Vous pouvez utiliser la fonction Row_Number
SELECT t1.Column1, t1.Column2, t2.Column3, t2.Column4
FROM (
SELECT Column1, Column2,
ROW_NUMBER() OVER (ORDER BY Column1) AS rn
FROM Table1) AS t1
FULL OUTER JOIN (
SELECT Column3, Column4,
ROW_NUMBER() OVER (ORDER BY Column3) AS rn
FROM Table2) AS t2
ON t1.rn = t2.rn
S'il vous plaît essayez ceci.
SELECT
Name, Surname, Age, Gender, Height,NULL AS DateOfBirth,NULL AS Origin
FROM
table1
UNION ALL
SELECT
Name, Surname, Age, Gender, NULL AS Height, DateOfBirth, Origin
FROM
table2
"... J'ai plus de 70 colonnes dans chaque table afin de sélectionner individuellement cela ne va pas fonctionner ..." - À compter de 2019, SQL n'a toujours aucune autre façon de spécifier des colonnes. Vous devrez les taper tous.
Pourquoi avez-vous deux tables similaires?