Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

MySQL में उपनाम से कॉलम का चयन करें

संक्षिप्त उत्तर:

  1. चयन सूची में उपनामों के संदर्भ या
  2. उपनाम भाव

इस पर अब तक मुझे केवल यही दस्तावेज़ मिला है: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 क्लॉज में सबक्वायरी में उपनामों का संदर्भ फिर से लागू नहीं किया जाएगा।

मैं अभी तक मानक दस्तावेज़ों में इस कार्यक्षमता का वर्णन करने वाली बग रिपोर्ट से परे दस्तावेज़ीकरण की तलाश में हूं; लेकिन अब तक कोई भाग्य नहीं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. वर्डप्रेस कस्टम स्ट्रक्चर परमालिंक साइट को नए डोमेन और सर्वर पर माइग्रेट करने के बाद टूट जाता है

  2. MySQL पर NoSQL डेटाबेस का उपयोग करना

  3. MySQL परिणामों को पहले अक्षरों के साथ कैसे क्रमबद्ध करें, प्रतीक अंतिम?

  4. हाइबरनेट - अद्वितीय कॉलम बाधा को अनदेखा किया जा रहा है

  5. MySQL डायनेमिक क्रॉसस्टैब क्वेरी:अतिरिक्त कॉलम के रूप में चाइल्ड रिकॉर्ड का चयन करना