日期:2014-05-17  浏览次数:20705 次

这样的条件应该怎么写
我的表中有个身份证的字段,我需要用一条select语句查出今天是谁过生日。
身份证有两种长度分别为15和18。

------解决方案--------------------
select * from
(select '340104760711111 ' a from dual
union
select '340104197607112511 ' a from dual
union
select '340104197607122511 ' a from dual
) t
where
decode(length(t.a),15,substr(t.a,9,4),18,substr(t.a,11,4), ' ')=to_char(sysdate, 'mmdd ')
------解决方案--------------------
楼上正解