在两个数字之间使用 having count 原因,所以我可以在 having count 子句中使用范围
Using having count cause between two numbers, so I can use a range inside the having count clause
select patientid, illnessid, count(1) as myrange
from database (nolock)
where diagnosetime between '2020-08-27' and '2020-08-28'
group by PJMBatchId, PJMCltId
HAVING COUNT(*) >= 2;
having count (*) >= 5;
所以我想结合我的计数,这样它可以计数在 2 到 5 之间,有没有办法做到这一点,
使用BETWEEN
:
SELECT patientid, illnessid, COUNT(1) AS myrange
FROM database (nolock)
WHERE diagnosetime BETWEEN '2020-08-27' AND '2020-08-28'
GROUP BY PJMBatchId, PJMCltId
HAVING COUNT(*) BETWEEN 2 AND 5;
如果您不想在 having 子句中使用 BETWEEN
,您可以将两个不等式放在一起:
HAVING COUNT(*) >= 2 AND COUNT(*) <= 5;
你可以试试这个:
select patientid, illnessid, count(1) as myrange
from database (nolock)
where diagnosetime between '2020-08-27' and '2020-08-28'
group by PJMBatchId, PJMCltId
HAVING COUNT(myrange) BETWEEN 2 AND 5;
select patientid, illnessid, count(1) as myrange
from database (nolock)
where diagnosetime between '2020-08-27' and '2020-08-28'
group by PJMBatchId, PJMCltId
HAVING COUNT(*) >= 2;
having count (*) >= 5;
所以我想结合我的计数,这样它可以计数在 2 到 5 之间,有没有办法做到这一点,
使用BETWEEN
:
SELECT patientid, illnessid, COUNT(1) AS myrange
FROM database (nolock)
WHERE diagnosetime BETWEEN '2020-08-27' AND '2020-08-28'
GROUP BY PJMBatchId, PJMCltId
HAVING COUNT(*) BETWEEN 2 AND 5;
如果您不想在 having 子句中使用 BETWEEN
,您可以将两个不等式放在一起:
HAVING COUNT(*) >= 2 AND COUNT(*) <= 5;
你可以试试这个:
select patientid, illnessid, count(1) as myrange
from database (nolock)
where diagnosetime between '2020-08-27' and '2020-08-28'
group by PJMBatchId, PJMCltId
HAVING COUNT(myrange) BETWEEN 2 AND 5;