mysql-根据身份证号更新性别、出生日期,根据出生日期查询年龄...

根据身份证号查询更新性别:

update uufs_ltx_info set xb= (case SUBSTRING(sfzh,17,1)&1 when 1 then '男' else '女' end) ;

 

update 表名 set  xb = (case SUBSTRING(sfzh,17,1)&1 when 1 then '男' else '女' end) ;

注意:xb(性别),sfzh(身份证号)根据表字段自行修改

 

 

根据身份证号查询更新出生日期:
select sfzh as 身份证号, cast(substring(sfzh,7,8) as date) as 出生日期, DATE_FORMAT(cast(substring(sfzh,7,8) as date), '%m-%d') as 生日 from table1;

UPDATE table1 set csrq=cast(substring(sfzh,7,8) as date) where LENGTH(sfzh) = 18;

 

 

根据出生日期查询年龄:

SELECT TIMESTAMPDIFF(YEAR,DATE(csrq),CURDATE()) AS age FROM uufr_ltx_info;

-- 求各党支部中 各类政治面貌人员的年龄总和
select dzbmc,zzmmmc,count(*) as rs,sum(TIMESTAMPDIFF(YEAR,DATE(csrq),CURDATE())) AS age from uufr_ltx_info where sfls = '否' GROUP BY dzbmc,zzmmmc;

 

-- 求各党支部中的各类政治面貌人员的平均年龄

select dzbmc,zzmmmc,count(*) as rs,sum(TIMESTAMPDIFF(YEAR,DATE(csrq),CURDATE()))/count(*) AS age from uufr_ltx_info where sfls = '否' GROUP BY dzbmc,zzmmmc;

 

posted @   小肥猪片儿的小小笔记  阅读(865)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示