Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Baris dengan nilai nol untuk group_concat tidak dikembalikan

Jawaban yang sebelumnya ditandai sebagai benar sayangnya salah (seperti yang dicatat oleh desaivv pengguna dalam komentar).

Itu harus membaca IFNULL , [bukan ISNULL, isnull hanya mengambil satu parameter dan mengembalikan boolean] !

IFNULL mengembalikan parameter kedua jika 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

Tapi ini sama sekali bukan solusi! Yang kita butuhkan adalah penggabungan yang "berbelit-belit" -

Jadi, silakan periksa SQL Fiddle ini: http://www.sqlfiddle.com/#!2/54c6f/3 /0



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP dan MYSQL menampilkan 1 catatan dari beberapa Nama

  2. Beralih ke Pernyataan yang Disiapkan

  3. json_encode() array di loop sementara untuk mySQL untuk kalender

  4. Perbarui kunci utama Django MySQL

  5. Bagaimana cara mereset kata sandi root MySQL yang terlupakan?