2016-02-18 6 views
6

में समूह का उपयोग करके प्रत्येक समूह में पहली पंक्ति का चयन करें मेरे पास स्क्लाइट में एक टेबल है। मैं प्रत्येक समूह की पहली पंक्ति प्राप्त करने की कोशिश कर रहा हूं। हालांकि इसके बारे में पहले के सवाल थे। मुझे स्क्लाइट में समाधान नहीं मिला।एसक्लाइट

मेरे तालिका इस प्रकार है:

select * from geoview 
MaxOfStatecountpercent | statepoolnumber | STATECODE 
123      1234    CA 
123      1234    FL 
234      1678    TX 
234      1678    MN 
234      0987    FL 
234      0987    CA 
234      9876    TX 

मैं MaxOfStatecountpercent के पहले और प्रत्येक statepoolnumber से STATECODE के पहले क्वेरी करने के लिए करना चाहते हैं। समकक्ष पहुंच एसक्यूएल क्वेरी है:

select first(MaxOfStatecountpercent), statepoolnumber, first(STATECODE) from geoview group by statepoolnumber; 

और उत्पादन की उम्मीद है:

First(MaxOfStatecountpercent) | statepoolnumber | First(STATECODE) 
123        1234    CA 
234        1678    TX 
234        0987    FL 
234        9876    TX 

मैं "सीमा 1" के साथ की कोशिश की लेकिन बात नहीं बनी। मैं SQLite में समकक्ष क्वेरी कैसे प्राप्त कर सकता हूं? अपने नमूना तालिका डेटा के साथ मेरे लिए

उत्तर

8

निम्नलिखित काम करता है:

SELECT MaxOfStatecountpercent, statepoolnumber, STATECODE 
FROM geoview 
GROUP BY statepoolnumber 
HAVING MIN(ROWID) 
ORDER BY ROWID 

मतलब यह है कि, अपने वांछित इनपुट के आधार पर, आप प्रत्येक statepoolnumber समूह की 'पहली' राज्य पहले रिकॉर्ड (होने के लिए नहीं बल्कि चाहते हैं वर्णमाला क्रम से 'पहले' से)।

+0

यह प्रश्न मेरे प्रश्न – User1090

+0

'HAVING MIN (ROWID) के अनुसार काम करता है यदि पंक्ति शून्य है तो काम नहीं करता है। –

+0

समकक्ष क्वेरी क्या हो सकती है जो मेरे प्रश्न का उत्तर देगी? – User1090

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