Instruction Select imbriquée dans la jointure MYSQL
SELECT * FROM A
JOIN B
ON B.ID = A.ID
AND B.Time = (SELECT max(Time)
FROM B B2
WHERE B2.ID = B.ID)
J'essaie de joindre ces deux tables dans MYSQL. Ne payez pas attention à ce que si l'ID est unique, alors je ne voudrais pas essayer de le faire. J'ai condensé, la vraie solution pour peindre une image simplifiée. Je suis en train d'essayer d'attraper et de rejoindre la table de B max date pour un enregistrement précis. Cette procédure est d'arriver à exécuter par un package SSIS et dit B2.ID est un inconnu de la colonne. Je fais les choses comme cela s'est souvent dans MSSQL et je suis de nouveau à MYSQL. N'importe qui ont des pointeurs ou des idées?
source d'informationauteur JBone
Vous devez vous connecter pour publier un commentaire.
Je fais ce type de requête différemment, avec un exclusion rejoindre au lieu d'une sous-requête. Vous souhaitez trouver les lignes de B qui ont le Temps maximum pour un IDENTIFIANT donné; en d'autres termes, si aucune autre ligne a plus de Temps et le même ID.
Vous pouvez également utiliser un table dérivéequi devaient faire mieux que d'utiliser une sous-requête corrélée.
P. S.: j'ai ajouté le
greatest-n-per-group
tag. Ce type de SQL question revient chaque semaine sur un Débordement de Pile, de sorte que vous pouvez suivre ce tag de voir des dizaines de semblables questions et leurs réponses.