РЕДАКТИРОВАТЬ
лучше ли объединять все запросы в одном единственном выборе, например select (select...) as q1, (select...) as q2
КОНЕЦ РЕДАКТИРОВАНИЯ
Мне нужно выполнять одни и те же следующие запросы для каждого месяца года.
Разница между каждым запросом заключается просто в добавлении group by
или удалении условия sing.
Первый запрос : мне нужно подсчитать общее количество посещений
SELECT
count(*)
from
visit
where
visit_status='Active'
AND
month(visit.date_of_visit)=month(:selectedDate)
AND
year(visit.date_of_visit)=year(:selectedDate)
, конечно :selectedDate
будет устанавливаться связыванием значений в PHP.
Второй запрос : подсчет количества пациентов (не посещений), и это можно сделать, просто добавив group by visit.patient_id
SELECT
count(*)
from
visit
where
visit_status='Active'
AND
month(visit.date_of_visit)=month(:selectedDate)
AND
year(visit.date_of_visit)=year(:selectedDate)
group by visit.patient_id
И затем я буду использовать rowCount
, чтобы получить результат в качестве возвращаемого значенияявляются строками из-за group by
.
Те же запросы должны повторяться, но теперь без даты, что означает подсчет с момента первой регистрации данных в системе:
SELECT
count(*)
from
visit
where
visit_status='Active'
group by visit.patient_id
У меня нет ошибок, используя следующий метод, но есть ли лучший способ сделать это и уменьшить загрузкуг на сервере путем минимизации количества запросов?