SQL Server:忽略AVG NULL值

Ere*_* G. 0 sql t-sql sql-server select average

Select AVG(Salary) from Employee
Run Code Online (Sandbox Code Playgroud)

输出:NULL

当我想将传入值转换为整数或小数时,出现错误:

输入字符串的格式不正确

GMB*_*GMB 5

聚合函数,例如AVG()忽略null值。因此,您得到的结果表明:

  • 要么salary在表的所有null行上

  • 或者表根本没有行

如果您想在该事件中返回其他内容,例如0,请使用COALESCE()

Select COALESCE(AVG(Salary), 0) from Employee
Run Code Online (Sandbox Code Playgroud)