SQL GROUP_CONCAT返回不需要的NULL

时间:2012-10-28 22:01:21

标签: mysql sql

我的SQL查询有问题,到目前为止我无法解决...

SELECT `m` . * , `s`.`id` AS `user_id` ,
    CONCAT( s.firstname, s.lastname ) AS `name` ,
    `s`.`email` , `mu`.`status` , `r`.`id` AS `user_id` ,
    GROUP_CONCAT( r.firstname, r.lastname
SEPARATOR "," ) AS `name` , `r`.`email`
FROM `messages` AS `m`
INNER JOIN `users` AS `s` ON m.from = s.id
INNER JOIN `messages_users` AS `mu` ON m.id = mu.message_id
INNER JOIN `users` AS `r` ON r.id = mu.user_id
WHERE (
m.id = '183'
)

我认为问题在于GROUP_CONCAT。当确实匹配时,它可以正常工作。但是当找不到任何内容时,所有字段都返回NULL。而不是NULL我希望它不返回任何行。 查询在使用CONCAT时有效,但我确实需要将所有名称组合在一行中,而不是多行。

0 个答案:

没有答案