Je cette requête:comment ajouter une colonne dans SQL Query incl. LEFT OUTER JOIN
SELECT p.ProductName,
dt.MaxTimeStamp,
p.Responsible
FROM Product p
LEFT JOIN (SELECT ProductID, MAX(TimeStamp) AS MaxTimeStamp
FROM StateLog
WHERE State = 0
GROUP BY ProductID, State) dt ON p.ProductID = dt.ProductID
ORDER BY p.ProductName;
Il fonctionne comme il se doit, mais maintenant je dois SELECT « État » trop. La partie délicate est, que je veux seulement le dernier "TimeStamp" où "State" était faux. Mais maintenant j'ai aussi besoin du "State" pour le dernier "TimeStamp".
J'ai essayé ceci:
SELECT p.ProductName, dt.State, dt.MaxTimeStamp, p.Responsible
FROM Product p
LEFT JOIN (SELECT ProductID, MAX(TimeStamp) AS MaxTimeStamp, State
FROM StateLog
WHERE State = 0
GROUP BY ProductID, State) dt ON p.ProductID =dt.ProductID
ORDER BY p.ProductName;
Mais il ne fonctionne pas, car il m'a donné le « Etat » pour le lastest « TimeStamp ».
Donc j'espère qu'il y a des têtes intelligentes qui peuvent m'aider. Je suppose que c'est très simple ou très difficile à résoudre.
Thx pour l'éditer pour moi tvanfosson. Je vais essayer de le rendre meilleur la prochaine fois. – radbyx
mais vous filtrez pour 'state = 0' donc l'état sera toujours 0 ... –
@radbyx - utilisez le bouton 0101 ou les échantillons de code de retrait de 4 espaces. Vous pouvez également utiliser les guillemets '\' 'pour mettre en ligne. – tvanfosson