我正在使用sql server management studio 2012并运行以下查询:
SELECT T1.ID, COUNT(DISTINCT T2.APPOINTMENT_DATE) AS [TOTAL_APPOINTMENTS]
FROM T1
LEFT JOIN T2
ON T1.ID = T2.ID
WHERE T2.APPOINTMENT_DATE > '2019-01-01' AND T2.APPOINTMENT_DATE < '2020-01-01'
AND (T1.ID = 1 OR T1.ID = 2 OR T1.ID = 3)
我想知道目前这3个人的预约总数。然后,我将把每个人都包括在表1中。表1给出了id(每个人一行),表2给出了每个人在不同日期的所有约会。
我得到的结果是:
ID TOTAL_APPOINTMENTS
1 12
2 3
但我想:
ID TOTAL_APPOINTMENTS
1 12
2 3
3 0
你能给个建议吗?
1条答案
按热度按时间jhdbpxl91#
移动
WHERE
第二个表中的条件ON
条款:请注意,第一个表中的条件保留在
WHERE
条款。也,IN
比一堆OR
条件。