Есть таблица program - в ней содержаться программы, есть таблица form - в ней содержаться формы и есть сводная таблица program_form - в ней содержаться связи программ и их форм.
Выбирается программа по id_program, и выводятся все существующие формы и если в сводной таблице есть связь программы и формы то рядом с названием формы в колонке is_checked должно выводиться либо 1 (если есть связь в сводной таблице) или 0 (если связи нет).
Сейчас пробую сделать вот так:
SELECT type_form, IF (EXISTS(SELECT type_form FROM form), 0, 0) AS is_checked FROM form
UNION
SELECT type_form, IF (EXISTS(SELECT id_program_form FROM program_form WHERE id_program=1), 1, 0) AS is_checked FROM form
LEFT JOIN program_form ON form.id_form = program_form.id_form WHERE form.id_form = program_form.id_form && program_form.id_program = 1;
Получаю вот такой результат:

В данном случае в сводной таблице есть 2 связи, как избежать повторение названия форм, то есть если есть форма с 1 то не должно быть такой же формы с 0?