stu表中年龄在18-20之间的学生记录。
注意: 计算年龄时以年计算,不考虑出生月份。假定当前日期为‘2020-03-01'。
提示:MSSQLServer 评测SQL语句。
stu表中年龄在18-20之间的学生记录。
注意: 计算年龄时以年计算,不考虑出生月份。假定当前日期为‘2020-03-01'。
提示:MSSQLServer 评测SQL语句。
sqlserver中,可以用datediff函数来计算时间差,第一个参数是需要返回值的度量单位,比如年、月、日等,后两个参数就是要计算时间差的时间了。
create table test_20220316_a
(sno VARCHAR(10),sname VARCHAR(10),sex int,mno VARCHAR(10),birdate datetime,memo VARCHAR(10));
insert into test_20220316_a values ('S001' ,'ZS' ,1 ,'01' ,'2001-10-01 00:00:00' ,'2' )
select sno,sname,sex,mno, datediff(year,birdate,'2020-03-01 00:00:00') 年龄,memo
from test_20220316_a a where datediff(year,birdate,'2020-03-01 00:00:00') between 18 and 20