從身份證號提取生日並更新到生日字段中的SQL語句


#1:根據身份證號 更新 生日字段 SQL

注意長度用len或者length

方法一:
update 表名 
set 生日字段=substring(身份證字段,7,4)+"-"+substring(身份證字段,11,2)+"-"+substring(身份證字段,13,2) where length(身份證字段)=18

方法二:

 update 表名
 set
  生日字段=CONCAT(身份證字段(IDENTITY,7,4),"-",substring(身份證字段,11,2),"-",substring(身份證字段,13,2)) where length(身份證字段)=18

 

mysql 往表中某個字段的字符串后追加字符串

update 表名 set 字段名=CONCAT(字段名,"需添加的值")WHERE 條件

數字則可以直接用'+'號相連 字符串必須用concat,規則:
(1)CONCAT(str1,str2,...)
#返回結果為將參數相連后得到的字符串。如有任何一個參數為NULL ,則返回值為 NULL。或許有一個或多個參數。
#如果所有參數均為非二進制字符串,則結果為非二進制字符串。 如果自變量中含有任一二進制字符串,則結果為一個二進制字符串。
#一個數字參數被轉化為與之相等的二進制字符串格式;若要避免這種情況,可使用顯式類型。
(2)CONCAT_WS()
#UPDATE user set name=CONCAT_WS('_','user',name)
#字段原值為:jack則輸出結果為user_jack,注意,第一個參數為連接符

 

#2:根據身份證號 更新 性別字段 SQL

update 表名 set SEX='男'
where length(身份證字段)=18 and substring(身份證字段,17,1)%2=1


update 表名 set SEX='女'
where length(身份證字段)=18 and substring(身份證字段,17,1)%2=0

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM