Как получить данные с помощью соединения в MySQL

0

У меня есть таблица:

Изображение 174551

и эта таблица:

Изображение 174551

Я бы хотел создать такой отчет

Изображение 174551

Я пробовал этот SQL:

select
    master_problem.problem,
    master_problem.sop_reference,
    master_problem.adidas_spec,
    count(log_roving_qc.id_problem) as jumlahfrom
master_problem
inner join log_roving_qc
    on master_problem.id_problem = log_roving_qc.id_problem
group by master_problem.id_problem

но пустые данные не отображаются. Я хочу отображать пустые данные с описанием 0

Теги:
database
join

1 ответ

2
Лучший ответ

Сделайте левое соединение таблицы master_problem с подзапросом, который выполняет агрегацию count:

SELECT
    mp.problem,
    mp.sop_reference,
    mp.adidas_spec,
    COALESCE(t.cnt, 0) AS jumlahfrom
FROM master_problem mp
LEFT JOIN
(
    SELECT id_problem, COUNT(*) as cnt
    FROM log_roving_qc
    GROUP BY id_problem
) t
    ON mp.id_problem = t.id_problem;

Ещё вопросы

Сообщество Overcoder
Наверх
Меню