संक्षिप्त उत्तर:
- चयन सूची में उपनामों के संदर्भ या
- उपनाम भाव
इस पर अब तक मुझे केवल यही दस्तावेज़ मिला है:https://bugs .mysql.com/bug.php?id=79549
उस कड़ी में निम्नलिखित है:
[9 दिसंबर 2015 15:35] रॉय लिसेंग ... मूल निर्णय के लिए यहां एक लंबी पृष्ठभूमि है:
WHERE क्लॉज (और उस मामले के लिए GROUP BY में) में उप-प्रश्नों में उपनामों के संदर्भ के विपरीत, कोई कारण नहीं है (मानक अनुपालन को छोड़कर) कि हमें चयन सूची में उपनामों के संदर्भ की अनुमति नहीं देनी चाहिए , क्योंकि वे क्वेरी निष्पादन के समान चरण में उपलब्ध होने चाहिए। लेकिन 5.6 में समर्थन काफी मनमाना था:
इसे देखते हुए:तालिका बनाएं t1(a int, b int),
चयन सूची में उपनाम मान्य नहीं है:
select a+b as c,c+1 from t1;
लेकिन एक सबक्वेरी के भीतर, c का संदर्भ मान्य है:
select a+b as c,(select c+1) from t1;
और उपश्रेणी उपनाम की परिभाषा के बाद होनी चाहिए:
select (select c+1),a+b as c from t1;
इसलिए, यह कहना आसान है कि चयन सूची में उपनामों के संदर्भ के लिए समर्थन बल्कि तदर्थ था। फिर भी, हम पुराने समाधान को फिर से लागू करने का प्रयास करेंगे, लेकिन इस सुविधा के समर्थन में स्पष्ट छिद्रों को साफ करने का कोई प्रयास नहीं करेंगे। लेकिन WHERE क्लॉज में सबक्वायरी में उपनामों का संदर्भ फिर से लागू नहीं किया जाएगा।
मैं अभी तक मानक दस्तावेज़ों में इस कार्यक्षमता का वर्णन करने वाली बग रिपोर्ट से परे दस्तावेज़ीकरण की तलाश में हूं; लेकिन अब तक कोई भाग्य नहीं।