我不确定如何处理以下查询。我读了这个查询,我知道它会给我什么输出。但是,我想知道它是如何在概念上处理的。
select FirstName, LastName, COUNT(CertificateId) as CertificatesAcheived
from Employee left join [Achivements]
on Employee.EmpID = [Achivements].EmpID
group by FirstName, LastName
好的,这就是我认为它的工作原理(如果我错了,请告诉我)-
首先,生成 (First Name, LastName) 类型的对,即 (f1,n1)(f1,n2)(f2,n5)(f3,n5) 等。许多人可以有相同的名字和/或姓氏姓名。
然后,对于每个这样的对,Count(---) 将计算获得的证书数量。
(......是的,我知道同名的员工将被视为一名员工,但这对我来说并不重要)