MYSQL:停止 IFNULL 返回 "empty" 行 null
MYSQL: Stop IFNULL returning "empty" rows of null
我按以下方式使用 IFNULL:
SELECT name, address, birthday, IFNULL(GROUP_CONCAT(pet_name), 'none') AS `pets_names` FROM pets WHERE user_id = 1;
但是,如果我没有用户 1,因此没有结果,我将得到一行,其中所有字段都为空,除了 pet_names 会显示 'none'。我尝试将其设置为仅在 user_id IS NOT NULL 时才给出一个值,但随后我得到了一行,每个值都为 NULL。在使用 IFNULL 时,我怎样才能让它不 return 任何行?
我已经通过添加
解决了这个问题
GROUP BY name
我想是因为没有名称,没有可分组的依据,因此没有结果。
我按以下方式使用 IFNULL:
SELECT name, address, birthday, IFNULL(GROUP_CONCAT(pet_name), 'none') AS `pets_names` FROM pets WHERE user_id = 1;
但是,如果我没有用户 1,因此没有结果,我将得到一行,其中所有字段都为空,除了 pet_names 会显示 'none'。我尝试将其设置为仅在 user_id IS NOT NULL 时才给出一个值,但随后我得到了一行,每个值都为 NULL。在使用 IFNULL 时,我怎样才能让它不 return 任何行?
我已经通过添加
解决了这个问题GROUP BY name
我想是因为没有名称,没有可分组的依据,因此没有结果。