说明:
Avg函数,函数名。主要用来计算包含在特定查询字段中的一组数值的算术平均值。AVG 函数返回数值列的平均值。NULL 值不包括在计算中。
同时,该函数只有一个参数,参数类型只能是int,float,decimal,money 等 不能用使用字符串等类型:
提示说明:
提示:”nvarchar对于avg运算符无效”,说明你给的参数的字符类型是nvarhcar,不符合avg的参数要求。
分析:测试
--建立测试表
create table s ( sa nvarchar(11) )
--插入数据
insert into s values (1),(2),(3)
--测试
Select avg(sa) as 平均年龄 from s
报错:操作数数据类型 nvarchar 对于 avg 运算符无效。
处理方法:(修改列字符类型)
alter table s alter column sa int
再查询:Select avg(sa) as 平均年龄 from s
输出结果:平均年龄
2
avg是求平均值 显然这个函数是对应数值型数据的操作 nvarchar是字符型数据 就是string类型的 怎么个平均法呢???
avg 是求平均数的,nvarchar是字符, 数字和字符能相比吗,谁见过求平均字的
你看下你的Sa字段是不是nvarchar类型的,是的话,把类型改下。