选择,平均声明不起作用

时间:2016-08-04 20:07:19

标签: sql-server tsql sql-server-2012

我有一个名为Employee的表,其上有大约17个不同的列。其中一列称为年龄。我想写一份声明,将在声明中获得所有具有AS的员工的平均年龄。这是我写的声明,不幸的是我继续收到错误信息。另外,我是新手,所以请不要狠狠地打败我......哈哈。

SELECT AVG(Age) AS Average_Age FROM Employee

我得到以下错误..

  

msg 8117,状态16,第1行操作数平均无效语法。

我相信这条消息告诉我avg正在尝试计算,但不能这样做。

为什么我在YouTube视频上看到了这一点,它对创建它的人来说非常有效?虽然我做了同样的确切陈述但我弄错了......有人可以解释一下吗?

根据评论更新:

错误讯息:

  

操作数数据类型varchar对于avg运算符无效。

1 个答案:

答案 0 :(得分:1)

如果age是varchar列,您可以尝试

SELECT AVG(cast(Age as int)) AS Average_Age FROM Employee

(但您可能需要考虑更改数据类型)