oracle函数综合小例子日期的操作
oracle函数综合小例子日期的操作
前提有一张学生表student 里面有个birthday字段(日期字段)
让你求出 大于10岁的学生 这边仅仅以年份判断
这里思路是把birthday与当前的日期相比 通过年份的差来判断
首先要把日期类型转化成字符串,
to_char(obj,formart)
to_char(birthday,'yyyyMMdd') 顺带一句
转化成日期 to_date(str,formart)
to_date(sysdate,'yyyy-mm-dd')
取得年份
substr(str,起始索引,截取长度)
substr(to_char(birthday,'yyyyMMdd'),0,4) )
字符串转化成数字
to_number函数 转化成数字
to_number(substr(to_char(birthday,'yyyyMMdd'),0,4) ))
最终sql
select * from student where birthday is not null
and (to_number(substr(to_char(sysdate,'YYYYMMDD'),0,4)) -to_number(substr(to_char(birthday,'YYYYMMDD'),0,4)))>10