MYSQL GROUP_CONCAT 包含 NULL

MYSQL GROUP_CONCAT INCLUDE NULL

我用这个代码对装备进行分组,但是当id_material没有装备时id_material没有显示。

select
material.id_material, 
material.mat_part_number, 
group_concat(distinct equipment.equipment_name order by equipment.equipment_name separator ', ') as equipment    
FROM material   
INNER JOIN equipment_list ON material.id_material=equipment_list.PKid_material INNER JOIN equipment ON equipment_list.PKid_equipment=equipment.id_equipment group by id_material;

我希望它看起来像这样

+-------------+----------------+
| id_material | equipment      |                                                             
+-------------+----------------+
|     1000001 | eq1            |         
|     1000002 | eq1, eq2       |
|     1000003 | eq3            |
|     1000004 |                |                           
+-------------+----------------+

但只出现了这个

+-------------+----------------+
| id_material | equipment      |                                                             
+-------------+----------------+
|     1000001 | eq1            |         
|     1000002 | eq1, eq2       |
|     1000003 | eq3            |                        
+-------------+----------------+

我应该把 NULL 条件放在哪里?

我刚刚修改了您的查询,这可能对您有所帮助。

SELECT 
  material.id_material, 
  material.mat_part_number, 
  GROUP_CONCAT(
    DISTINCT equipment.equipment_name 
    ORDER BY 
      equipment.equipment_name SEPARATOR ', '
  ) AS equipment 
FROM 
  material 
  LEFT JOIN equipment_list ON material.id_material = equipment_list.PKid_material 
  LEFT JOIN equipment ON equipment_list.PKid_equipment = equipment.id_equipment 
GROUP BY 
  id_material;