[英]SQL Count for each grouping
So I am writing a SQL statement for the following. 因此,我正在为以下内容编写一条SQL语句。 List the count of patients for each insurance code. 列出每个保险代码的患者人数。
here is my SQL Statement. 这是我的SQL语句。
SELECT INSURANCE.INS_ID, PATIENT.MPI_LastName
FROM PHYSICIAN
INNER JOIN
(PATIENT INNER JOIN
(INSURANCE INNER JOIN VISIT
ON INSURANCE.INS_ID = VISIT.VIS_InsuranceCode
)
ON PATIENT.MPI_NUMBER = VISIT.VIS_MPINum
)
ON PHYSICIAN.PHY_ID = VISIT.VIS_Phys
ORDER BY INSURANCE.INS_ID;
I do not know how to write a SQL to count the Patients for each insurance code. 我不知道如何编写SQL来计算每个保险代码的患者数。 without duplicate records being counted. 不会计算重复的记录。
SELECT INSURANCE.INS_ID, count(distinct PATIENT.MPI_LastName) as count
FROM VISIT
JOIN PATIENT
ON PATIENT.MPI_NUMBER = VISIT.VIS_MPINum
JOIN INSURANCE
ON INSURANCE.INS_ID = VISIT.VIS_InsuranceCode
GROUP BY INSURANCE.INS_ID
SELECT VISIT.VIS_InsuranceCode, count(distinct PATIENT.MPI_LastName) as count
FROM VISIT
JOIN PATIENT
ON PATIENT.MPI_NUMBER = VISIT.VIS_MPINum
GROUP BY VISIT.VIS_InsuranceCode
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.