确实个人而言是比较讨厌日期这种操作的,但是躲不掉啊,还是要写的.
先来建个表吧:
create table user(
uid number(2) primary key,
username varchar(50) not null,
password varchar(50) not null,
age char(3) check( age = '男' or age = '女' ),
birthday DATE
)
建表的时候确实没什么问题,但是Oracle里的日期类型麻烦的不是建表而是对于日期类型的操作…
1.添加数据:
日期类型正常添加必须是这个格式:to_date(‘日期’,‘日期格式化’)
#例子
insert into user1(usid,username,password,age,birthday) values(1,'jack','1234','男',to_date('2000-03-18','YYYY-MM-DD'))
insert into user1 values(2,'rose','1234','女',to_date('2002-03-18','YYYY-MM-DD'))
insert into user1 values(3,'jjj','1234','男',to_date('1999-03-18','YYYY-MM-DD'))
insert into user1 values(4,'rrr','1234','女',to_date('1998-03-18','YYYY-MM-DD'))
2.条件查询:
日期类型也是要加这个格式:to_date(‘日期’,‘日期格式化’)
#例子
select * from user1 where birthday >= to_date('2000-01-01','yyyy-MM-dd');
对于日期类型来说,修改数据无非就是直接改变数据内容或者是有选择性的推迟或者回滚天数,以查询来说可以这么写
#正常数据
select usid,birthday from user1;
#推迟一天
select usid,birthday + 1 from user1;
#推迟一百天
select usid,birthday + 100 from user1;
正常数据-------------推迟一天--------------推迟一百天



3.修改数据:
#将某个人推迟一天
update user1 set birthday = birthday + 1 where usid = 1;

小结:在日期类型的数据中操作数据所用的数字单位是以天来计算的

1756

被折叠的 条评论
为什么被折叠?



