SQL 中怎么根据出生日期算出年龄 然后用年龄查询

如题所述

sql是不能查询的,php可以计算年龄

1、取得当前日期的时间

2、将sql中的出生日期换算成时间

3、当前日期时间-出生日期时间

4、将得到的数值转换为年月日

温馨提示:内容为网友见解,仅供参考
第1个回答  2012-05-07
select *
from 表名
where (case when (dateadd(yy,DATEdiff(yy,出生日期,比较的日期),出生日期)>比较的日期)
then (DATEdiff(yy,出生日期,比较的日期)-1)
else DATEdiff(yy,出生日期,比较的日期)
end)>15
查找截止到比较的日期年龄大于15岁的人
case when 是sql server语法,其它数据库用相应的函数替换
第2个回答  推荐于2018-02-28
select *,datediff(year,birth,getdate()) as 年龄 from table where datediff(year,birth,getdate()) >='20'本回答被提问者和网友采纳
第3个回答  2012-05-06
这个和编程语言差不多,先定义一个变量,然后用现在的年分减去这个变量,就得到了年龄

SQL中怎么根据出生日期算出年龄,然后用年龄查询?
sql是不能查询的,php可以计算年龄 1、取得当前日期的时间 2、将sql中的出生日期换算成时间 3、当前日期时间-出生日期时间 4、将得到的数值转换为年月日

sql根据出生年月计算年龄
SQL计算年龄:SELECT FLOOR(DATEDIFF(CURDATE(), STR_TO_DATE(birthday, '%Y-%m-%d'))\/365) AS age FROM table_name;拓展:MySQL中可以使用TIMESTAMPDIFF函数根据出生日期计算年龄,它接受5个参数:TIMESTAMPDIFF(unit, datetime_expr1, datetime_expr2, [datetime_expr3], [datetime_expr4])unit...

SQL计算年龄
在SQL中计算年龄,通常有两种方法,一种是基于月数计算,另一种是基于天数计算。首先,基于月数计算年龄,Oracle数据库提供了一个MONTHS_BETWEEN()函数,可以计算两个日期之间的月数。公式为:ROUND(MONTHS_BETWEEN(SYSDATE, BIRTH_DATE) \/ 12, 1)。这里的SYSDATE表示当前系统日期,BIRTH_DATE表示出生日...

SQL语句如何根据出生日期计算年龄
第一种:\\x0d\\x0a一张人员信息表里有一人生日(Birthday)列,跟据这个列,算出该人员的年龄\\x0d\\x0adatediff(year,birthday,getdate())\\x0d\\x0a例:birthday = '2003-3-8'\\x0d\\x0agetDate()= '2008-7-7'\\x0d\\x0a结果为:5\\x0d\\x0a这样结果是会返回该人员的大概年龄,但不精确.不会精确到...

SQL语句如何根据出生日期计算年龄
1、计算年龄其实就是计算当前日期和出生日期之间的差值 2、SQL计算时间差值使用的函数是:Datediff()定义和用法:DATEDIFF() 函数返回两个日期之间的天数。语法:DATEDIFF(datepart,startdate,enddate)startdate 和 enddate 参数是合法的日期表达式。datepart 参数可以是下列的值:datepart--缩写 年--yy或...

sql中如何用两种方法根据诞生日期查询年龄
1、select*,datediff(year,birth,getdate())as年龄fromtablewheredatediff(year,birth,getdate())=202、selectxm,to_char(sysdate,YYYY)-to_char(csrq,YYYY)nlfromsamplesysdate为系统变量返回系统日期,to_char为转换为字符中的函数

知道学生表中有出生日期,如何计算年龄,写出~SQL
SQL计算年龄可以使用求时间差值的函数:datediff 若出生日期列名为:col1,那么SQL语句应该这样写:select datediff(yyyy,col1,getdate()) as 周岁,datediff(yyyy,col1,getdate())+1 as 虚岁 from 学生表

求SQL语句:如何根据出生日期来计算年龄,和70年代出生占年龄的百分比
1、出生日期来计算年龄:select csrq as csrq ,datediff(year,csrq ,getdate()) as nl from table 2、70年代出生占年龄的百分比:select rs70*100\/zrs as bfb from (select sum(case when csrq like'1970%'then 1 else 0 end ) as rs70,count(csrq) as zrs from table) a ...

如何用SQL语句把出生日期计算年龄,比如是1984-2-16怎么算出年龄啊
语句为:SELECT FLOOR(DATEDIFF(CURRENT_DATE,'1984-2-16')\/356)常用sql对数据库操作:连接数据库命令: mysql -u root -p密码 创建数据库:create database dbname;查看所有的数据库:show databases;删除数据库: drop database dbname;切换数据库:use dbname;知识拓展:MySQL是一个关系型数据库...

sql通过出生日期计算每个学生的年龄,统计学生的平均年龄,最后显示年龄...
select 学号,姓名,datediff(year,出生日期,getdate()) 年龄 into #年龄 from 学生表;select @avgAge =avg(年龄) from #年龄 --获取每个学生的年龄 select * from #年龄 --获取平均年龄 select @avgAge --获取年龄大于平均年龄的学生 select 学号,姓名,年龄 from #年龄 where 年龄>@avgAge ...

相似回答