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

सिंटेक्स त्रुटि या पहुंच उल्लंघन:1055 एक्सप्रेशन #8 का चयन सूची समूह द्वारा खंड में नहीं है और इसमें गैर-समेकित स्तंभ शामिल है

यह MySQL 5.7 में एक नई बात है और एक चेतावनी है कि आपकी क्वेरी अस्पष्ट है।

निम्न तालिका पर विचार करें:

id    |   name    |   age    |   points
--------------------------------------------
1         Bob         21         1
2         James       14         1
3         Bob         21         3
4         James       14         2
5         Casey       17         3

यदि आपने निम्न प्रश्न किया है:

SELECT name, age, SUM(points) FROM scores GROUP BY name

फिर name कॉलम समूहीकरण के लिए प्रयोग किया जाता है। ध्यान दें कि age कई मान हो सकते हैं, इसलिए यह "गैर-एकत्रित" है। उन मूल्यों को कम करने के लिए आपको कुछ करने की आवश्यकता है।

5.6 और पिछले में व्यवहार केवल क्रमबद्ध क्रम के आधार पर पहले वाले को चुनना था, हालांकि यह कभी-कभी अप्रत्याशित था और विफल हो जाएगा। 5.7 में वे आपको पहली बार में ऐसा करने से रोक रहे हैं।

यहां समाधान यह है कि उस पर भी समूह बनाया जाए, या MIN() . जैसे समग्र ऑपरेटर को लागू किया जाए इसके लिए।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. बेस 64 मैसकल के लिए उपयोगकर्ता इनपुट को साफ करने की विधि के रूप में

  2. रेल 4:MySQL और MongoDB का एक साथ उपयोग करें

  3. सीएसवी के साथ MySQL की तुलना करें और अंतर खोजें

  4. एडब्ल्यूएस गोंद प्रेडिकेट पुश डाउन कंडीशन का कोई प्रभाव नहीं पड़ता है

  5. बड़े MySQL डंप का धीमा आयात