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

सबक्वेरी 1 से अधिक पंक्ति लौटा रही है

मुझे नहीं लगता कि एक पंक्ति में एक सरणी वापस करना संभव है, लेकिन आप क्या कर सकते हैं group_concat का उपयोग करें मानों को एक स्ट्रिंग में शामिल करने के लिए जिसे आप बाद में विस्फोट कर सकते हैं:

SELECT `customers`.`First Name`, `customers`.`Last Name`,
GROUP_CONCAT(`items`.`Product Name` SEPARATOR '$^$') AS `Products` 
FROM customers 
JOIN items 
ON `customers`.`Customer No` = `items`.`Customer No` 
WHERE `customers`.`Customer No` = 6 
GROUP BY `Customer No`

$products=explode("$^$",$result[0]['products']);

group_concat . के लिए डिफ़ॉल्ट विभाजक है , जो विस्फोट का उपयोग करते समय काफी खतरनाक हो सकता है इसलिए हम SEPARATOR '$^$' . का उपयोग करते हैं यादृच्छिक वर्णों का एक समूह जोड़ने के लिए जो इसके बजाय चालू होने की संभावना नहीं है।



  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 DQL MySQL राउंड () के बराबर है?

  2. सबक्वेरी में दो "WHERE NOT IN" के साथ Laravel Eloquent

  3. मैं mysql कार्यक्षेत्र के माध्यम से mysql डेटाबेस में डेटा कैसे आयात कर सकता हूं?

  4. UnboundLocalError:स्थानीय चर 'कर्सर' असाइनमेंट से पहले संदर्भित

  5. tomcat7:JDBC ड्राइवर वर्ग को लोड नहीं कर सका [com.mysql.jdbc.Driver]