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

MySQL उपनाम फ़ील्ड को एक साथ जोड़ना

डेटाबेस इंजन में चीजों को कैसे निष्पादित किया जाता है, इसका क्रम यहां दिया गया है।

ध्यान दें कि यह एक अर्थपूर्ण दृष्टिकोण है कि चीजों को कैसे निष्पादित किया जाता है, डेटाबेस चीजों को एक अलग क्रम में कर सकता है, लेकिन इसे परिणाम उत्पन्न करना होगा जैसे कि यह इस तरह से किया गया था।

  1. सबसे पहले FROM-भाग का मूल्यांकन किया जाता है, मुझे डेटा कहां से मिलेगा
  2. फिर WHERE-भाग का मूल्यांकन किया जाता है कि हम किन पंक्तियों में रुचि रखते हैं
  3. फिर ग्रुप बाय-पार्ट का मूल्यांकन किया जाता है, हम परिणामी पंक्तियों को कैसे जोड़ते हैं
  4. फिर HAVING- भाग का मूल्यांकन किया जाता है कि हम किन समूहों में रुचि रखते हैं
  5. फिर ORDER BY-part का मूल्यांकन किया जाता है, हम उन पंक्तियों/समूहों को किस क्रम में चाहते हैं
  6. आखिरकार, SELECT-भाग का मूल्यांकन किया जाता है कि हम किन कॉलमों में रुचि रखते हैं

कुछ डेटाबेस इंजन आपको चयन-भाग में दूसरे कॉलम द्वारा समूह में "ग्रुप बाय 2" कहकर इसे रोकने की अनुमति देते हैं, लेकिन यदि आप उपरोक्त आदेश से चिपके रहते हैं, तो आपको अब तक पता होना चाहिए कि आपके कोड का कारण क्या है काम यह नहीं है कि कुल या कुल 2 (अभी तक) नामों के साथ कोई कॉलम नहीं है।

दूसरे शब्दों में, आपको या तो दो भावों को दोहराना होगा, या इसे करने का दूसरा तरीका खोजना होगा।

उप-क्वेरी का उपयोग करने के लिए आप क्या कर सकते हैं (बशर्ते आप एक MySQL संस्करण पर हैं जो इसका समर्थन करता है):

SELECT total, total2, total+total2 as grandtotal
FROM (
    SELECT sum(EXPR) as total, sum(EXPR) as total2
    FROM tablename
    ) x

टिप्पणी के अनुसार बाकी को हटा दें।

<स्ट्राइक>मैं MySQL के बारे में ज्यादा नहीं जानता, हालांकि आपको उप-क्वेरी को उपनाम देना पड़ सकता है:

...

    FROM tablename
    ) AS x
      ^-+^
        |
        +-- add this

कुछ डेटाबेस इंजन उपक्वेरी को अलियासिंग करते समय AS कीवर्ड का उपयोग करने की अनुमति नहीं देते हैं, इसलिए यदि उपरोक्त काम नहीं करता है, तो यह प्रयास करें:

...

    FROM tablename
    ) x
      ^
      |
      +-- add this



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. रेल का प्रबंधन कैसे करें database.yml

  2. मैं एक MySQL तालिका को कई यादृच्छिक संख्याओं के साथ कैसे पॉप्युलेट करूं?

  3. MYSQL CONCAT MAX LENGTH

  4. MySQL में अंतिम पंक्ति का चयन करें

  5. सर्च इंजन ल्यूसीन बनाम डेटाबेस सर्च