如何解决GROUP BY列的空优先级?

时间:2019-05-22 13:52:07

标签: mysql sql

我尝试选择元素,然后使用“ group by”显示它们,但得到的结果是id_mobilier = null,而我想优先考虑id_mobilier = 3

如何显示优先级为id_mobilier = 3 and not NULL

这是我的SQL请求:

SELECT * 
  FROM couleurs 
  LEFT 
  JOIN mobilier_couleurs 
    ON couleurs.id = mobilier_couleurs.id_couleur 
 WHERE id_mobilier IS NULL 
    OR id_mobilier = 3

首先我得到了这个:

enter image description here

如果我将GROUP BY nom添加到请求中,我得到了:

enter image description here

我希望id_mobilier列中的INT如果存在并且不为空

1 个答案:

答案 0 :(得分:0)

我想你想要这个:

SELECT * 
FROM couleurs c LEFT JOIN
     mobilier_couleurs mc
     ON c.id = mc.id_couleur AND mc.id_mobilier = 3;

如果您只想查看GROUP BY是否存在行,而3如果没有NULL,则不需要3