मुझे लगता है कि आप कुछ ऐसा चाहते हैं:
SELECT dl.DispatchID,
dl.StopNumber AS NextStop,
dl.Arrived,
dl.Departed
FROM DispatchLocations dl
INNER JOIN
( SELECT DispatchID, MIN(StopNumber) [StopNumber]
FROM DispatchLocations
GROUP BY DispatchID
) MinDL
ON MinDL.DispatchID = dl.DispatchID
AND MinDL.StopNumber = dl.StopNumber
यह प्रत्येक प्रेषण आईडी के लिए न्यूनतम स्टॉपनंबर का विवरण लौटाएगा। फिर आप बस WHERE
. का उपयोग करके इसे और फ़िल्टर कर सकते हैं . उदा.
WHERE Arrived = 1
AND Departed = 0
मुझे लगता है कि ऊपर दिए गए चयन कथन में शीर्ष पर जोड़ने से परिणाम वापस आ जाएंगे:
Dispatch_ID NextStop Arrived Departed
=========== ======== ======= ========
6410 1 True False
50589 1 True False
50687 1 True False
हालांकि मैंने इस सवाल को पूरी तरह गलत समझा होगा।