有个朋友问我这个:查询出身份证号码中是12月份生日的员工总数 。我不会,会的朋友帮忙答一下,3Q

解决方案 »

  1.   

    先判断身份证号是15位还是18位然后
    substr() 
      

  2.   

    15位的substr(身份证号码,9,2)
    18位的substr(身份证号码,11,2)
      

  3.   


    --没有测试,substr截取的位数可能会有问题,自己修改下就好select 
    sum(
    decode(
    decode(length(身份证号码),15,substr(身份证号码,9,2),substr(身份证号码,11,2))  --从身份证号码中取出月份
    ,12,1,0)
    )
    from test;
      

  4.   

    谢谢上面的回答,现在差不多知道了。第一次提问题,就得到这么都的帮助,very much,感谢你们!