I use this code to group the equipment, but when the id_material has no equipment the id_material didn't show.
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;
i want it to appear like this
+-------------+----------------+
| id_material | equipment |
+-------------+----------------+
| 1000001 | eq1 |
| 1000002 | eq1, eq2 |
| 1000003 | eq3 |
| 1000004 | |
+-------------+----------------+
but it only appear this
+-------------+----------------+
| id_material | equipment |
+-------------+----------------+
| 1000001 | eq1 |
| 1000002 | eq1, eq2 |
| 1000003 | eq3 |
+-------------+----------------+
where should i put the NULL condition?
I just modified your query, this might help you.
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;