0
votes

SQL combinant des lignes, sous les hypothèses courtes que possible

J'ai une base de données SQL avec des colonnes A, B, C et D. Pour chaque ligne, les 4 cas se produisent:

>     A  B  C  D    

>     X  Y  Z  W


2 commentaires

Auto rejoindre-le b


Pourriez-vous expliquer votre réponse s'il vous plaît?


3 Réponses :


1
votes

Cela fait ce que vous voulez:

select tx.a, tx.b, ty.c, ty.d
from t tx join
     t ty
     on tx.a = 'X' and ty.a = 'Y'


2 commentaires

Je ne comprends pas .. Qu'est-ce que t et qu'est-ce que Ty.A?


@ P.rot. . . Ce sont des alias de table et une partie importante de la langue SQL.



0
votes

type de xxx


2 commentaires

et T2.c n'est pas null et t2.d n'est pas nul quelque chose ne va pas pour moi ici ... il pourrait être que d ou c puisse être vide ... mais pas les deux. Le "et" me donne une table vide. Donc, je veux une sortie me donnant x et y si c est vide ou D est vide et laissez la colonne si c et d soient vides


@ P.rot .. Cela peut être fait avec coalesce , voir la réponse mise à jour.



0
votes

avec une jointure auto: xxx

sans coalesce () : xxx


3 commentaires

S'il vous plaît seulement avec des jointures et des logiques (et ou) pas avec une fonction comme coalesce


Merci c'est la réponse parfaite pour moi :)


Si cette réponse a résolu votre problème, envisagez de l'accepter en cliquant sur la coche à gauche.