2010-06-25 17 views
5

अरे दोस्तों, मैं निम्न तालिका इस तरह संरचित है:SQL क्वेरी, अलग पंक्तियों की जरूरत

row structure

तो मूल रूप से के रूप में आप देख सकते हैं, विभाग साल के हर जोड़े को बदलता है नाम के माध्यम से चला जाता है। उदाहरण के लिए संख्या 16 देखें। मैं एक चुनिंदा क्वेरी चाहता हूं जो केवल तारीख प्राप्त करेगी जब तिथि सबसे बड़ी होगी। मैं उसको कैसे करू?

+1

कौन सा डेटाबेस इंजन? – Blorgbeard

+0

एक्सेस 2007 का उपयोग करके एक्सेस टेबल – masfenix

उत्तर

5
select ID, Name from departments o 
where o.thedate= 
    (select max(i.thedate) from departments i where o.id=i.id) 
+0

धन्यवाद, खूबसूरती से काम किया। Alt के लिए – masfenix

0

इस तालिका के लिए प्राथमिक कुंजी क्या है? यह नाम तुलना के साथ एक ही तालिका में एक सबक्वायरी करता है।

SELECT 
    id, 
    name, 
    date 
FROM table 
WHERE name = (SELECT TOP 1 name 
       FROM table AS subtable 
       WHERE subtable.name = table.name 
       ORDER BY date DESC) 
1
SELECT ID, 
First(Name) AS FirstOfName, First(DateChange) AS FirstOfDateChange 
FROM departments 
GROUP BY ID 
ORDER BY First(DateChange) DESC; 
+0

+1। उपाय। आईडी द्वारा समूह ने मुझे फेंक दिया, लेकिन इस मामले में, यह डुप्लिकेट डेटा फ़ील्ड है। – JeffO

0

चयन डी। * विभागों से d अंदरूनी शामिल हों m.pk पर मीटर (पी द्वारा चुने जाने वाले विभागों ग्रुप आईडी द्वारा theDate = मैक्स (theDate) होने) = घ .pk कहां [नाम] = "विभाग"

+0

यह स्वीकार्य उत्तर से बेहतर है क्योंकि ...? –

संबंधित मुद्दे