У меня есть таблица списка, которая в основном содержит одно и то же поле в каждой части.
- p_ticket1_m_site_data | - p_ticket1_ticket | - p_ticket1_last_row
- p_ticket2_m_site_data | - p_ticket2_ticket | - p_ticket2_last_row
- p_ticket3_m_site_data | - p_ticket3_ticket | - p_ticket3_last_row
Я могу подсчитать каждую таблицу отдельно:
SELECT COUNT( * ) AS tot_sites, IFNULL( COUNT(
CASE WHEN p_ticket1_m_site_data.m_date_target = DATE( NOW( ) )
THEN 1
ELSE NULL
END ),0) AS todays_target, IFNULL( COUNT(
CASE WHEN (
p_ticket1_m_site_data.m_date_target = DATE( NOW( ) )
AND p_ticket1_ticket.t_status =9 )
THEN 1
ELSE NULL
END ),0
) AS todays_achieve, IFNULL( COUNT(
CASE WHEN p_ticket1_ticket.t_status =9
THEN 1
ELSE NULL
END ),0 ) AS tot_in
FROM p_ticket1_m_site_data
LEFT JOIN p_ticket1_last_row ON p_ticket1_last_row.t_m_id = p_ticket1_m_site_data.m_id
AND p_ticket1_last_row.t_req_type = '04_int_finish_ack'
LEFT JOIN p_ticket1_ticket ON p_ticket1_ticket.t_id = p_ticket1_last_row.t_id
WHERE p_ticket1_m_site_data.m_status =1
Что мне делать, если я хочу подсчитать все общее количество сайтов из ticket1, ticket2, ticket3?
Пожалуйста, помогите мне, ребята, спасибо.,.
Пример использования UNION ALL:
Я просто использую UNION ALL в своем коде выше для ticket1 и ticket2, но это не такчто я хочу.Мой вывод ожидания подсчитать все таблицы тикетов, так что представление: tot_sites (из всех тикетов), todays_target (из всех тикетов), todays_achieve (из всех тикетов) и tot_in (из всех тикетов)