用sql语句,由出生日期获得年龄,日期差DATEDIFF(),获取当前系统时间GETDATE()
(2012-07-30 13:59:09)
标签:
getdate()convert杂谈 |
分类: SQL |
例:查询Student表中每个学生的姓名和年龄。 GETDATE()獲取當前時間.
1.方法一
END
BEGIN
DECLARE @NOW varchar(5)
SET @NOW =CONVERT(varchar(100), GETDATE(),112)
SELECT SNAME,(CONVERT(int, SUBSTRING(@NOW ,1,4))-
FROM
STUDENT
END
ps:"Select CONVERT(varchar(100), GETDATE(), 112)"输出的格式是:20080516,由于是年龄计算,只需要左数头四位,所以使用到SUBSTRING()截取,再将其用CONVERT()转换为相应的格式做加减.
CONVERT用法详见:http://hi.baidu.com/wxk0248/item/c8584a190ccbee4b6826bb75
2.方法二(更簡單,使用DATEDIFF())
BEGIN
SELECT SNAME,DATEDIFF(yy,SBIRTHDAY,GETDATE())as AGE FROM STUDENT
END
ps:DATEDIFF()函数计算两个指定日期(DATETIME格式)之间的日期差。
DATEDIFF()用法詳見:http://www.w17x.com/AritcleDisplay.aspx?id=459

加载中…