Я хотел бы создать таблицу, в которой используются все данные из «treatment_parameters» и параметр_fk = 47. Кроме того, таблица должна также включать только количество (*) строк из «treatment_log», где missed_treatment = ''.
Таким образом, таблица должна проецировать все данные из «treatment_parameters» с параметром_fk = 47 и количеством строк в «treatment_log», где missed_treatment = ''.
Следует также отметить, что: t.id = l.treatment_fk
Я пытался это сделать, но это частично удачно. В таблице отображаются все необходимые данные, однако она не отображает каждую строку из «treatment_paratmers» с параметром_fk = 47. (Должно быть два разных ряда)
SELECT t.id,t.parameter_fk,t.course_name,t.room, t.protocol,t.navigation,t.area,t.coil,t.number_of_treatments,t.motor_threshold,t.threshold_multiplier,t.target_threshold,t.about,t.date,t.created_at, COUNT(*) AS completed_treatments
FROM treatment_parameters t
LEFT JOIN treatment_log l
ON t.id = l.treatment_fk
WHERE t.parameter_fk = 47
AND l.missed_treatment=' '
Ниже вы можете увидеть результат вышеприведенного SQL-запроса:
Изображение 1
Тем не менее, вы можете видеть, что при изменении SQL-запроса существует более одной строки для paratmer_fk = 47
SELECT t.id,t.parameter_fk,t.course_name,t.room, t.protocol,t.navigation,t.area,t.coil,t.number_of_treatments,t.motor_threshold,t.threshold_multiplier,t.target_threshold,t.about,t.date,t.created_at
FROM treatment_parameters t
WHERE t.parameter_fk = 47
Изображение 2
Таким образом, мы должны показать обе строки, а также иметь счетчик (*) для missed_treatment = '' эффекта обеих строк.
Ниже вы можете найти весь список из treatment_log.
treatment_log