जब भी आपको Oracle त्रुटि संदेश मिलता है जिसे आप समझ नहीं पाते हैं, तो सबसे पहले अर्थ को देखना है। एक तरीका बस इसे Google करना है। इस मामले में Oracle9i डेटाबेस त्रुटि में पूरा विवरण मिला संदेश है:
(अजीब तरह से यह त्रुटि संदेश 10G या 11G मैनुअल में दर्ज नहीं किया गया है, इसके बावजूद भी इसे उठाया जा रहा है!)
यह आपके द्वारा लिखे गए कथन से मेल खाता है, जो एक SELECT DISTINCT क्वेरी है जहाँ आप परिणामों को उस कॉलम से क्रमित करने का प्रयास कर रहे हैं जिसे आपने नहीं चुना है।
यदि आप इसके बारे में सोचते हैं, तो आप जो मांग रहे हैं उसका कोई मतलब नहीं है:DISTINCT मानों का चयन करके जिसमें sam.stoptime शामिल नहीं है (उदाहरण के लिए) आप sam.stoptime के लिए विभिन्न मानों के साथ कई पंक्तियों को समेकित कर रहे हैं, तो कौन सा एक होगा आदेश को नियंत्रित करें?
साथ ही, जैसा कि नोएल का जवाब बताता है, वैसे भी इस कोड में ORDER BY क्लॉज होने का कोई कारण नहीं है, इसलिए इसका समाधान बस इसे हटाना है।