मैं SQL और SQL सर्वर के लिए नया हूँ और एक क्वेरी में विभिन्न खंडों के प्रसंस्करण क्रम को समझने में समस्या आ रही है।

मेरे पास प्रश्न है:

SELECT DISTINCT TOP(10) name
FROM tblEmployees
ORDER BY birthday;

मैं समझता हूं कि क्वेरी का वास्तव में प्रसंस्करण क्रम है:

FROM 
SELECT 
ORDER BY

हालांकि, मुझे ऐसा लगता है कि DISTINCT और TOP जैसे खंड ORDER BY खंड के परिणाम पर निर्भर हैं। इसलिए यदि SELECT क्लॉज को ORDER BY क्लॉज से पहले निष्पादित किया जाता है, तो DISTINCT और TOP ORDER BY क्लॉज के परिणाम का उपयोग कैसे कर सकते हैं?

2
Thor 21 अक्टूबर 2016, 07:10

1 उत्तर

सबसे बढ़िया उत्तर

क्वेरी को तार्किक रूप से नीचे के क्रम में संसाधित किया जाता है

1. FROM
2. ON
3. OUTER
4. WHERE
5. GROUP BY
6. CUBE | ROLLUP
7. HAVING
8. SELECT
9. DISTINCT
10 ORDER BY
11. TOP

DISTINCT को ORDER BY से पहले संसाधित किया गया है, इसलिए DISTINCT ORDER BY पर निर्भर नहीं है।

DISTINCT के कारण पहले डुप्लिकेट को परिणाम से हटा दिया जाएगा फिर ORDER BY लागू किया जाएगा

4
Pரதீப் 21 अक्टूबर 2016, 07:15
ओह ठीक है, मैंने हमेशा सोचा था कि "विशिष्ट" और "शीर्ष" "चयन" खंड का हिस्सा हैं, अवधारणा को स्पष्ट करने के लिए धन्यवाद!
 – 
Thor
21 अक्टूबर 2016, 07:17
और साथ ही, मैंने अभी-अभी आपकी प्रोफ़ाइल की जाँच की है। मुझे ऐसा लगता है कि आप sql/tsql के विशेषज्ञ हैं, क्या मैं कुछ सुझाव माँग सकता हूँ कि मेरे जैसे शुरुआती के लिए sql के लिए सबसे अच्छा सीखने का मार्ग क्या है? किसी भी ज्ञान और सलाह की बहुत सराहना की जाएगी!
 – 
Thor
21 अक्टूबर 2016, 07:19
1
- सराहना के लिए धन्यवाद.. मैं एक विशेषज्ञ नहीं हूं और सभी .. बस अपना प्रश्न पूछें यहां आपकी मदद करने के लिए बहुत से लोग हैं
 – 
Pரதீப்
21 अक्टूबर 2016, 07:21
आप बहुत विनम्र हैं :) वैसे भी, आपकी मदद के लिए फिर से धन्यवाद! इसकी बहुत सराहना करते हैं!
 – 
Thor
21 अक्टूबर 2016, 07:23