我是一名新手程序员,我想总结一下员工出勤记录的价值 无论如何,我应该选择什么? COUNT还是SUM?
我尝试使用像这样的COUNT函数......
SELECT COUNT(jlh_sakit) AS sakit FROM rekap_absen
仅显示1个记录时,值显示为“1”。
我尝试使用这样的SUM函数......
SELECT SUM(jlh_sakit) AS sakit FROM rekap_absen
它显示所有值将所有值更改为“1”
我想每次只显示1个人 (例如:John(2个生病,2个权限,1个alpha)
你能帮我吗?
答案 0 :(得分:0)
为了按指定列求和,请使用group by语句。
SELECT SUM(sick),SUM(alpha),SUM(permissions),person FROM rekap_absen group by person
它会根据个人对您的金额进行分组。 您可以将您的总和命名如下: 选择SUM(生病)为生病,SUM(alpha)为alpha,SUM(权限)为权限,person FROM rekap_absen group by person
假设您的表rekap_absen包含列:person,sick,alpha,permissions
答案 1 :(得分:0)
如果您使用任何聚合函数,如min / max / sum / count,则应使用group by。现在你的问题是“我应该选择什么?COUNT还是SUM?”假设你有person_name,jlh_sakit这意味着在你的情况下你可以使用
select person_name, count(jhl_sakit) as attribute
from rekap_absen
group by person
这将为您提供如下输出:
person_name attribute
John 2
King 5