sql >> Databasteknik >  >> RDS >> Mysql

Hur sammanfogar jag strängar från en underfråga till en enda rad i mysql?

genom att använda GROUP_CONCAT() funktion och ett GROUP BY-anrop. här är en exempelfråga

SELECT 
   p.package_id,
   p.package_name,
   p.price,
   GROUP_CONCAT(pz.zone_id SEPARATOR ',') as zone_list 
FROM 
   package p 
LEFT JOIN package_zone pz ON p.package_id = pz.package_id 
GROUP BY 
   p.package_id

du bör fortfarande kunna beställa efter zone_id s (eller zone_list), och istället för att använda LIKE , kan du använda WHERE zp.zone_id = 'Z1' eller något liknande.




  1. MySQL - Hur söker man efter exakt ordmatchning med LIKE?

  2. Hur man lagrar data med dynamiskt antal attribut i en databas

  3. ap_pass_brigade misslyckades i handle_request_ipc-funktionen

  4. Vad är nackdelen med att använda ett MySQL-fält med lång textstorlek när varje post får plats i ett fält i medelstorlek?