设为首页 收藏本站
查看: 636|回复: 0

[经验分享] oracle 时间类型、自定义排序、常用数据类型

[复制链接]
YunVN网友  发表于 2016-8-14 06:47:20 |阅读模式
  1、oracle时间类型的使用

--时间类型的使用
select * from bureau_info where bur_end_date > to_date('2011-09-30','yyyy-mm-dd');
--获取当前时间
select to_char(sysdate,'yyyy') from dual;
select  sysdate  from files;    --files是用户创建的任意一张表=,表中不包含sysdate字段
--计算两时间差精确到天
select to_date(bur_end_date)-to_date(bur_begin_date) from bureau_info where rownum = 1;
--得到当前时间是当前年的那一个星期
select to_char(sysdate,'WW') from dual
--取本周第一天喝最后一天的两种写法
select count(*) from bureau_info where to_char(update_date,'yyyy') = to_char(sysdate,'yyyy') and
to_char(update_date,'ww') = to_char(sysdate+1,'WW')
select count(*) from bureau_info where update_date between trunc(sysdate,'day')+1 and trunc(sysdate,'day') + 8;
--得到当前月份的第一天和最后一天
select to_char(sysdate,'yyyy/mm')||'/01' firstday, to_char(last_day(sysdate),'yyyy/mm/dd') lastday from dual
  
  

--时间约束
create table c (
sss date,
constraint ck_sss check(sss >to_date('2011-09-30','yyyy-mm-dd') and sss < to_date('2012-09-30','yyyy-mm-dd'))
)
  
  --oracle常用数据类型

常用的数据库字段类型如下:
字段类型 中文说明 限制条件 其它说明
CHAR 固定长度字符串 最大长度2000 bytes
VARCHAR2 可变长度的字符串 最大长度4000 bytes 可做索引的最大长度749
NCHAR 根据字符集而定的固定长度字符串 最大长度2000 bytes
NVARCHAR2 根据字符集而定的可变长度字符串 最大长度4000 bytes
DATE 日期(日-月-年) DD-MM-YY(HH-MI-SS) 经过严格测试,无千虫问题
LONG 超长字符串 最大长度2G(231-1) 足够存储大部头著作
RAW 固定长度的二进制数据 最大长度2000 bytes 可存放多媒体图象声音等
LONG RAW 可变长度的二进制数据 最大长度2G 同上
BLOB 二进制数据 最大长度4G
CLOB 字符数据 最大长度4G
NCLOB 根据字符集而定的字符数据 最大长度4G
BFILE 存放在数据库外的二进制数据 最大长度4G
ROWID 数据表中记录的唯一行号 10 bytes ********.****.****格式,*为0或1
NROWID 二进制数据表中记录的唯一行号 最大长度4000 bytes
NUMBER(P,S) 数字类型 P为整数位,S为小数位
DECIMAL(P,S) 数字类型 P为整数位,S为小数位
INTEGER 整数类型 小的整数
FLOAT 浮点数类型 NUMBER(38),双精度
REAL 实数类型 NUMBER(63),精度更高
  
  2、自定义排序,bur_state为列名;启动'。。。。为列的值
   order by DECODE(bur_state, '启动',1,'结束',2,'中止',3,'跟踪',4,'准备',5)
  
  3、sql语句中时间字段查询,在字段上不用函数,而是在字符串上用函数
          oracle,时间类型不用函数的比较:
        alarmtime between to_date(dqksTime, 'YYYYMMDDHH24mi') and to_date(dqjsTime, 'YYYYMMDDHH24mi')
        oracle,时间比较中时间的计算:
   alarmtime between  to_date(dqksTime, 'YYYYMMDDHH24mi') - 2 and  to_date(dqksTime, 'YYYYMMDDHH24mi')
         说明:alarmtime 表字段中时间类型的字段

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-257335-1-1.html 上篇帖子: 认识Oracle数据库System Global Area (SGA)(1) 下篇帖子: oracle 中得到sql执行计划后如何优化
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表