年龄计算问题 出生日期存在oracle中的一个表如person中的字段birthdt中,记法如19820324,如何根据19820324来得到这个人的年龄?select idno,? agefrom person?要具体怎么写的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 假设你这个字段是字符型,SQL> select to_number(to_char(sysdate,'yyyy'))-to_number(substr('19820324',1,4)) age 2 from dual; AGE---------- 25 select Months_between(trunc(sysdate,'yyyy'),trunc(to_date('19820324','yyyymmdd'),'yyyy'))/12 from dual; select Months_between(trunc(sysdate, 'yyyy '),trunc(to_date( '19820324 ', 'yyyymmdd '), 'yyyy '))/12 from dual;这句运行有问题而且19820324只是例子,它是表中的字段 恩,忘了看月份。SQL> select trunc(Months_between(sysdate,to_date('19820324','yyyymmdd'))/12) from dual;TRUNC(MONTHS_BETWEEN(SYSDATE,TO_DATE('19820324','YYYYMMDD'))/12)---------------------------------------------------------------- 25SQL> select trunc(Months_between(sysdate,to_date('19821124','yyyymmdd'))/12) from dual;TRUNC(MONTHS_BETWEEN(SYSDATE,TO_DATE('19821124','YYYYMMDD'))/12)---------------------------------------------------------------- 24 具体表就用:select trunc(Months_between(sysdate,to_date( 生日字段, 'yyyymmdd '))/12) from T; select floor(months_between(sysdate,出生日期)/12) from dual; 求救:只用sql语句能解决这个要求吗? oracle查询里exists怎么用啊?请举个例子 sql语句 50次上限问题 如何用批处理在Orcal 10g中创建表空间和数据(急急急急急急急急急急急急急急) 用了DISTINCT还是有重复的! java存储过程授权报错,存储过程的功能是生成pdf 存储过程调用问题,请高手指教!!!!!!!!! 求救:登陆不上 请教:如何查看某个日期后所建的表 请教!!大家帮忙啊!! 建表问题 oracle 中的排列的问题
SQL> select to_number(to_char(sysdate,'yyyy'))-to_number(substr('19820324',1,4)) age
2 from dual; AGE
----------
25
这句运行有问题
而且19820324只是例子,它是表中的字段
SQL> select trunc(Months_between(sysdate,to_date('19820324','yyyymmdd'))/12) from dual;TRUNC(MONTHS_BETWEEN(SYSDATE,TO_DATE('19820324','YYYYMMDD'))/12)
----------------------------------------------------------------
25
SQL> select trunc(Months_between(sysdate,to_date('19821124','yyyymmdd'))/12) from dual;TRUNC(MONTHS_BETWEEN(SYSDATE,TO_DATE('19821124','YYYYMMDD'))/12)
----------------------------------------------------------------
24
select trunc(Months_between(sysdate,to_date( 生日字段, 'yyyymmdd '))/12) from T;