SQL语句查询,有兴趣进来看看

来源:百度知道 编辑:UC知道 时间:2024/06/09 19:34:02
一张表,employeeID是主键,字段是以下,birthday(出生年月),employeeID(员工号),name(员工姓名),sex(性别),dapartment(工作部门),worktime(工作时间及什么时候来公司工作的),用SQL语句求
查询大于平均年龄的员工基本信息以及该员工的工龄
出现错误了,服务器: 消息 409,级别 16,状态 2,行 1
average aggregate 运算不能以 datetime 数据类型作为参数。怎么解决

因为你字段类型是日期格式的
SELECT *,datediff(yy,worktime,getdate())
FROM 表的名字
WHERE datediff(yy,birthday,getdate())> (SELECT AVG(datediff(yy,birthday,getdate())) FROM 表的名字)

SELECT *,200906-birthday
FROM 表的名字
WHERE 200906-birthday > (SELECT AVG(200906-birthday) FROM 表的名字)

SELECT *,200906-worktime
FROM 表的名字
WHERE 200906-birthday > (SELECT AVG(200906-birthday) FROM 表的名字)

上面的“阳光上的桥”写的很清楚,就是有一点“查询。。。该员工的工龄”是查询工龄而不是年龄。