sql 身份证号码统计年龄段
           
  • 求救  才入职不久 领导要去用身份证号码统计年龄段
    身份证字段 zjhm
    表名  jl
    谢谢


ctt 发布于 2019-2-12 13:50
1min目标场景问卷 立即参与
回答问题
悬赏:4 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
lastleafLv0见习互助
发布于2019-2-12 14:10

select  FLOOR(DATEDIFF(DY, substring(身份证字段,7,4), GETDATE()) / 365.25)  age  from [表名] 

  • ctt ctt(提问者) 你这个是区年龄我知道 我需要的年龄段 10-20,20-30 ,30-40 各多少人 这种
    2019-02-12 14:16 
  • lastleaf lastleaf 回复 ctt(提问者) select 年龄段,count(1) 人数 from ( select case when age >=10 and age <20 then \'10~20\' when age >=20 and age <30 then \'20~30\' when age >=30 and age <40 then \'30~40\' end as 年龄段 from ( select FLOOR(DATEDIFF(DY, substring(身份证字段,7,4), GETDATE()) / 365.25) age from [表名] ) t ) tt group by 年龄段
    2019-02-12 14:23 
  • ctt ctt(提问者) 回复 lastleaf 完美谢谢
    2019-02-12 14:25 
  • lastleaf lastleaf 回复 ctt(提问者) 这种sql你可以问问度娘,自己查一下,印象要深一些。提高下自己写sql的能力
    2019-02-12 14:27 
最佳回答
0
tangjqLv5见习互助
发布于2019-2-12 14:17

SELECT to_number(to_char(SYSDATE,'yyyy'))-SUBSTR(zjhm,7,4) FROM jl

  • 4关注人数
  • 989浏览人数
  • 最后回答于:2019-2-12 14:17
    请选择关闭问题的原因
    确定 取消
    返回顶部