2010-09-05 15 views
14

आपका स्वागत है,"ऑर्डर बाय अवर"?

मुझे आश्चर्य है कि "आदेश से आदेश" क्रमबद्ध करने में लौटाए गए डेटा को वापस करना संभव है, लेकिन मैं उस डेटा को रिवर्स ऑर्डर में चाहता हूं।

उदाहरण के लिए, मैं मान

ID 
1 
2 
3 
4 

और मुझे 3 मैं

1 
2 
3 

मिला जब मैं आईडी DESC सीमा से आदेश कर

आदेश कर आईडी एएससी सीमा से साथ तालिका मिला 3 मुझे

4 
3 
2 

मैं

3 
2 
1 

तो मैं द्वारा एएससी लेकिन revers परिणाम ऑर्डर करने के लिए करना चाहते हैं करना चाहते हैं। मैं हमेशा array_reverse का उपयोग करके PHP पक्ष में ऐसा कर रहा था, लेकिन आज मैं आपसे पूछना चाहता हूं। Maybye मैं गलत हूँ और मैं इसे सिर्फ MySQL में कर सकता हूं। सादर

+1

संभावित डुप्लिकेट [बी mysql का उपयोग कर परिणाम सेट से अंतिम 4 पंक्तियों को लाने का तरीका] (http://stackoverflow.com/questions/2980220/best-way-to-fetch-last-4-rows-from-a-result-set-using -mysql) –

उत्तर

5

आप एक सबक्वेरी का उपयोग कर पहली तीन पंक्तियों प्राप्त कर सके और उसके बाद एक बाहरी क्वेरी में इन पंक्तियों का क्रम उलटने:

SELECT * 
FROM 
(
    SELECT * 
    FROM yourtable 
    ORDER BY ID 
    LIMIT 3 
) T1 
ORDER BY ID DESC 
0

आप एक बाहरी SELECT इस्तेमाल कर सकते हैं क्रम को उल्टा करने के लिए:

SELECT * 
FROM (
    SELECT … 
    ORDER BY id ASC 
    LIMIT 3 
) sub 
ORDER BY id DESC 
25
SELECT * 
FROM (
    SELECT ... 
    FROM ... 
    ORDER BY ID ASC 
    LIMIT 3 
) AS sq 
ORDER BY ID DESC 

इसे दो चरणों में काम करने के बारे में सोचें। सबसे पहले यह आंतरिक क्वेरी निष्पादित करता है: निम्नतम आईडी वाले 3 रिकॉर्ड का चयन करता है। फिर बाहरी क्वेरी में यह उन्हें अवरोही क्रम में टाइप करता है।

+0

यह बहुत अच्छा काम है। – marc

+0

दोस्त, आप कमाल हैं! – user3284463

+0

यह प्रश्न कैसे काम करता है! क्या आप कृपया – user3284463

4

नहीं, आप गलत नहीं हैं। डेटा की किसी भी समझदार राशि के लिए कोई अंतर नहीं है। Array_reverse ठीक है।
यह ऐसी चीज नहीं है जिसे आपको बहुत अधिक चिंतित होना है। बस जो भी आप अधिक पसंद का उपयोग करें - पठनीयता या अन्य व्यक्तिपरक कारणों

के लिए
2

आप एक उप क्वेरी के साथ ऐसा कर सकते हैं:

SELECT * FROM 
    (SELECT * FROM myTable ORDER BY idMyTable LIMIT 0, 3) AS r 
ORDER BY r.idMyTable DESC 

संसाधन:

+0

संसाधन पृष्ठ नहीं मिला :( – user3284463

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