sql >> Database teknologi >  >> RDS >> Mysql

Rækker med nulværdi for group_concat returneres ikke

Svaret tidligere markeret som rigtigt er desværre forkert (som brugeren desaivv bemærkede i kommentaren).

Den skal læse IFNULL , [ikke ISNULL, isnull tager bare én parameter og returnerer en boolean] !

IFNULL returnerer den anden parameter, hvis null:

SELECT  `a`.`id` , `a`.`name` , `b`.`id` AS  `b_id` , `b`.`name` AS  `b_name` ,   
IFNULL(GROUP_CONCAT(  `c`.`l_id` ), '') AS  `c_ls`
FROM  `a`
INNER JOIN  `b` ON  `a`.`b_id` =  `b`.`id`
LEFT OUTER JOIN  `c` ON  `a`.`id` = `c`.`a_id`
GROUP BY `a`.`id`
ORDER BY  `a`.`created` DESC

Men dette er slet ikke løsningen! Det, vi har brug for, er et "indviklet" join -

Så tjek venligst denne SQL Fiddle: http://www.sqlfiddle.com/#!2/54c6f/3 /0



  1. MySQL Connector/NET Output Parameter Returnerer NULL

  2. Postgresql:Tjek, om skemaet eksisterer?

  3. Lagring af SQLite-database ved hjælp af Android og Phonegap

  4. Få varighed som tidsstempelforskel for gentagne placeringsændringer