सही तरीका एक आत्म प्रदर्शन से पहले में शामिल होने:
select t1.a, t1.b, t1.c
from table1 t1
join table1 t1_max
on t1.id = t1_max.id
group by t1.a, t1.b, t1.c
having t1.date = max(t1_max.date)
निम्नलिखित कैसे आप है एक उपनगर के साथ शामिल हो जाएगा y:
select t1.a, t1.b, t1.c
from table1 t1
where t1.date = (select max(t1_max.date)
from table1 t1_max
where t1.id = t1_max.id)
एक समग्र जब एक बहु तालिका के साथ काम कर उपयोग करने से पहले एक भी डाटासेट बनाने के लिए सुनिश्चित करें में शामिल होने:
select t1.id, t1.date, t1.a, t1.b, t1.c
into #dataset
from table1 t1
join table2 t2
on t1.id = t2.id
join table2 t3
on t1.id = t3.id
select a, b, c
from #dataset d
join #dataset d_max
on d.id = d_max.id
having d.date = max(d_max.date)
group by a, b, c
उप क्वेरी संस्करण:
select t1.id, t1.date, t1.a, t1.b, t1.c
into #dataset
from table1 t1
join table2 t2
on t1.id = t2.id
join table2 t3
on t1.id = t3.id
select a, b, c
from #dataset d
where d.date = (select max(d_max.date)
from #dataset d_max
where d.id = d_max.id)
मैं कोई एसक्यूएल गुरु नहीं हूं लेकिन क्या यह काम करता है या नहीं? आप यह भी नहीं बताते कि आपको क्या परेशानी हो रही है और क्या आपका पोस्ट समाधान काम करता है या नहीं। –
आपको यह बताने की ज़रूरत है कि आप इस प्रश्न को समझने के लिए मेरे लिए क्या बेहतर चाहते हैं। – tster
उचित परिणाम प्राप्त करने के लिए कोई समाधान है? –