SQL计算年龄

来源:百度知道 编辑:UC知道 时间:2024/05/21 12:16:56
有个表里有员工的出生日期,格式是2008-11-12;怎么增加一列年龄,计算出每个员工的年龄呢?

在表里创建一个列年龄,用公式来计算
(datediff(year,出生日期的列名,getdate())+1

ORACLE 用法:以月分计算的!
SELECT ROUND(MONTHS_BETWEEN(SYSDATE,BIRTH_DATE)/12,1) FROM TABLE

SQL里面应该也有类似的函数,实在不行只能用天数了/365了!
SELECT ROUND((SYSDATE-BIRTH_DATE)/365,1) FROM TABLE

这个我想分成两步走容易理解,还不容易出错
首先增加一列名为年龄,代码如下:
alter table 表名
add 年龄 int
然后往这一列插数据,代码如下
insert
into 表名
select year(getdate()-year(出生日期))
from 表名

alter table 学生表
add 年龄 int
update 学生表 set 年龄= (year(getdate())-year(出生日期))

select (year(getdate())-year(出生日期)) as 年龄 from table