當前位置:首頁 » 編程語言 » sql語句根據身份證號提取年齡
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

sql語句根據身份證號提取年齡

發布時間: 2022-07-03 02:42:31

『壹』 sql由身份證號計算出生日期和年齡

select datediff(day,convert(datetime,SUBSTRING (ID, 7, 4) + '-' + SUBSTRING (ID, 11, 2) + '-' + SUBSTRING (ID, 13, 2)) ,getdate())/360 from 員工信息表

『貳』 sql如何用身份證檢索年齡

身份證18位的,從第7到第11位是年份
right(number,12)去除前面6位
在left(上面的,4)取出最左邊4位,用2011減
偽碼就是下面這個
select 2011-left(right(number,12),4) from shenfenzheng

『叄』 sql中,根據身份證號碼截取出了出生日期,怎麼獲取當前年齡,精確到月、日

具體代碼就不寫了

思路如下

  1. 身份證18位 從多少位是年月日來著?大概是第7--15是年月日 substring()方法

  2. 獲取當前年與日

  3. 兩個日期轉化為毫秒相減,相減後的毫秒轉化為天數
    給個小例子

  4. publicstaticvoidmain(String[]args){
    CalendarnowDate=Calendar.getInstance(),oldDate=Calendar.getInstance();
    nowDate.setTime(newDate());//設置為當前系統時間
    oldDate.set(1990,5,19);//設置為1990年(6)月29日
    longtimeNow=nowDate.getTimeInMillis();
    longtimeOld=oldDate.getTimeInMillis();
    long相隔天數=(timeNow-timeOld)/(1000*60*60*24);//化為天
    System.out.println("相隔"+相隔天數+"天");

『肆』 SQL用身份證號計算年齡命令

比如身份證號碼或者出生日期在A1單元格,可以在B1輸入以下公式:
(如果是其他單元格,相應改一下就行)
問題1:
=DATEDIF(TEXT(MID(A1,7,6+(LEN(A1)=18)*2),(LEN(A1)=15)*19&"0-00-00"),TODAY(),"y")
問題2:
=CHOOSE(MOD(MID(A1,15+(LEN(A1)=18)*2,1),2)+1,"女","男")
問題3:
=DATEDIF(TEXT(A1,"0-00-00"),TODAY(),"y")

『伍』 sql語句:如何根據一個身份證的欄位取出相應的年齡

select trunc(sysdate)-to_date(substr(id,6,8),'yyyymmdd') from al

『陸』 如何用sql語句通過 身份證號 查詢年齡

身份證的年齡欄位知道吧,查出來,用datediff算就知道了
15位18位給個case語句判斷就行了

『柒』 如何寫在身份證號碼中提取年齡的sql語句

在身份證號碼中提取年齡的sql語句可以參考下面的代碼:

用字元串函數SubString(@str,@StartPos,@nLen)

DECLARE@PersonalIDVARCHAR(18)

SET@PersonalID='xxxxxx19491001xxxx'

SELECTCAST(substring(@PersonalID,7,8)ASSMALLDATETIME)--第7位開始,連續8位

(7)sql語句根據身份證號提取年齡擴展閱讀:

SQL 語句舉例

CREATE: 創建資料庫和表等對象

DROP: 刪除資料庫和表等對象

ALTER: 修改資料庫和表等對象的結構

SELECT:查詢表中的數據

INSERT:向表中插入新數據

UPDATE:更新表中的數據

DELETE:刪除表中的數據

COMMIT: 確認對資料庫中的數據進行的變更

ROLLBACK: 取消對資料庫中的數據進行的變更

GRANT: 賦予用戶操作許可權

REVOKE: 取消用戶的操作許可權

『捌』 sql 語句查詢 根據身份證查年齡統計,急!

這個好辦:
select year(getdate())-year(cast(substring(@a,7,8) as datetime))
15位的身份證我就沒見過了,你把15的身份證形式發給我,我給你個完整的語句

『玖』 sql中根據身份證號來計算年齡

update person set age= year(getdate())-substring(sfzh,7,4)

這個命令有一點小錯誤。因為year() 結果是數值型。subs()結果是字元型。

改為:

update person set age= year(getdate())-val(substring(sfzh,7,4))