oracle 使用 date timestamp 而不使用varchar2()的好处

简介: oracle数据库,表示日期数据基本是date型,只有年月的用varchar2或者char,好处见下: 1、数据规范。date对合法日期型会校验,包括闰年2月这种。避免字符型变量产生的某月32号,日期长度不对,日期格式不统一等问题。曾经有过痛苦经历,面对字符型的2013111这种数据不知道是11月1日还是1月11日,只想说日… 2、检索效率。如果你经常在where后面带这个日期,或者要
oracle数据库,表示日期数据基本是date型,只有年月的用varchar2或者char,好处见下:
1、数据规范。date对合法日期型会校验,包括闰年2月这种。避免字符型变量产生的某月32号,日期长度不对,日期格式不统一等问题。曾经有过痛苦经历,面对字符型的2013111这种数据不知道是11月1日还是1月11日,只想说日…
2、检索效率。如果你经常在where后面带这个日期,或者要给这个字段建索引。你可以试试date和char的差别,更别说分区索引了。
3、计算方便。当你计算两个日期差几天,你是愿意对着char写个function判断大月小月闰月呢,还是直接拿date变量date1-date2呢?当你要批量把日期往后延50天的话,你是愿意写一大段存储过程呢,还是直接update table set date1=date1+50呢?


如果date型变量就是一个char(14)的话,那根本不值得被单独创建出来,既然存在,那就一定有特殊意义和使用价值。
目录
相关文章
|
4月前
|
Oracle 关系型数据库 数据库
oracle varchar2 只能存数字,不能存英文和字母
oracle varchar2 只能存数字,不能存英文和字母
45 0
|
存储 Oracle 关系型数据库
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
460 0
oracle blob和 varchar2互相转换,mybatis 读取blob乱码等相关问题总结
|
Oracle 关系型数据库
oracle timestamp相减 计算差多少秒
oracle timestamp相减 计算差多少秒
191 0
|
Oracle 关系型数据库
【ogg一】入门OGG(oracle golden date)详细部署 Oracle 11g
【ogg一】入门OGG(oracle golden date)详细部署 Oracle 11g
176 0
|
SQL Oracle 关系型数据库
oracle Sql语句Date转long时间戳
oracle Sql语句Date转long时间戳
oracle Sql语句Date转long时间戳
|
SQL Oracle 关系型数据库
[沫沫金原创]Oracle去除Date时分秒 不用to_char然后再to_date这么麻烦
1、你是否在Sql编写中遇到Datetime类型,只想保留到日期去除时分秒呢? 2、你是否需要繁琐的进行date转varchar再转回date? 现在,告诉所有亲:不用这么麻烦! select trunc(sysdate) from dual  --2013-01-06 直接就OK,从此轻装上阵,带你装逼带你飞。
1843 0
|
SQL Oracle 关系型数据库
oracle中的char、varchar、varchar2
varchar2和varchar的目前没有区别,不过ocacle以后的版本就不支持varchar类型,如果想新版本的数据库兼容就不要用varchar,如果想和其它数据库兼容就不要用varchar2
1372 0