У меня есть 3 таблицы:
pd_tprofessional
, pd_tpreference
и pd_tprofessional_preference
.
pd_tprofessional
и pd_tpreference
имеют уникальный идентификатор (fkprofessional
и fkpreference
соответственно).
pd_tprofessional_preference
имеет 3 столбца: fkpreference
, patientpreference_selected
, fkprofessional
Я пытаюсь написать запрос, который получит все pd_tpreference
и вернет patientpreference_selected
как 1 или 0, если fkprofessional
равно 13 и pd_tprofessional_preference
с этим fkprofessional
.
Вот что я получил до сих пор:
SELECT patientpreference_selected, fkprofessional, pkpreference, preference_name
FROM pd_tprofessional_preference
RIGHT OUTER JOIN pd_tpreference
ON pd_tpreference.pkpreference = pd_tprofessional_preference.fkpreference
Этот запрос дает мне все pd_tpreference
по правому внешнему, соединяя их с pd_tprofessional_preference
, теперь я застрял при возвращении patientpreference_selected
как 1 или 0, если эта запись существует в pd_tprofessional_preference
, когда fkprofessional
13 с fkpreference
. Я действительно надеюсь, что это имеет смысл.