十年網(wǎng)站開(kāi)發(fā)經(jīng)驗(yàn) + 多家企業(yè)客戶 + 靠譜的建站團(tuán)隊(duì)
量身定制 + 運(yùn)營(yíng)維護(hù)+專業(yè)推廣+無(wú)憂售后,網(wǎng)站問(wèn)題一站解決
select floor(months_between(to_date(concat(extract(year from sysdate),'-10-31'),'YYYY-MM-DD'),to_date(生日的日期,'yyyy-mm-dd'))/12) from table_name

創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),定西企業(yè)網(wǎng)站建設(shè),定西品牌網(wǎng)站建設(shè),網(wǎng)站定制,定西網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,定西網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
floor 向下取整
months_between 日期相差的月份數(shù)
concat字字符串連接
extract(year from sysdate) 返回當(dāng)前日期的年份
可用to_char函數(shù)將date類型轉(zhuǎn)成字符類型。
如emp表中有如下數(shù)據(jù):
如果計(jì)算生日的方法是當(dāng)前日期的年份減去生日的年份,可用如下語(yǔ)句:
select?ename,hiredate,to_char(sysdate,'yyyy')-to_char(hiredate,'yyyy')?from?emp;
查詢結(jié)果:
根據(jù)出生日期查詢年齡用的還挺多的。
簡(jiǎn)單分析一下,加入一個(gè)孩子五歲半了,那習(xí)慣認(rèn)為他還是5歲。
用Oracle提供的months_between()函數(shù),先獲取出生日期和當(dāng)前日期的月數(shù),然后除以12向下取整:
使用的時(shí)候,將時(shí)間段替換成出生日期對(duì)應(yīng)的字段即可。
如果,計(jì)算年齡用的次數(shù)非常多,最好寫(xiě)成自定義函數(shù)。