sql 根據身份證判斷年齡是否小於18歲


 

SELECT *, 
Age=
datediff(yy,cast(case 
when substring(PersonalId,7,1) in ('1','2')   /*若第7位不是'1'或'2'則表示是15位身份證編碼規則*/
then substring(PersonalId,7,8) 
else '19' + substring(PersonalId,7,6) 
end as datetime),getdate())
FROM Student
WHERE
datediff(yy,cast(case 
when substring(PersonalId,7,1) in ('1','2') 
then substring(PersonalId,7,8) 
else '19' + substring(PersonalId,7,6) 
end as datetime),getdate()) <18

 


免責聲明!

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



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