Oracle日期综合练习:
- 按照’2009-4-11 20:35:10’ 格式显示系统时间
select to_char(sysdate,’YYYY-MM-DD HH24:MI:SS’) from dual;
- 需要显示职员的入职时间格式为’17 of 10月 2004’,sql语句如何写
select hiredate,to_char(hiredate,'DD "of" MM YYYY') from emp;
- 构造sql语句,产生类似于下面形式的结果
即hiredate列显示的格式为’1980-12-17’;再将hiredate列以’1980年12月17日’格式显示。
select ename, to_char(hiredate,'yyyy-mm-dd'),
to_char(hiredate,'yyyy"年"mm"月"dd"日"')
from emp;
- 创建订单表t_order,订单表中有3列分别为订单编码orderid、下单时间orderdate、启运时间shipdate。
create table t_order(
orderid number(4),
orderdate date,
shipdate date
);
- 向order表中插入数据
1001 ’12-4月-98’,‘10-8月-98’
1002 ’12-3月-98’,‘10-6月-98’
1003 ’12-2月-98’,‘10-9月-98’
insert into t_order values(1001,'12-4月-98','10-8月-98');
insert into t_order values(1002,'12-3月-98','10-6月-98');
insert into t_order values(1003,'12-2月-98','10-9月-98');
- 查询一个订单,从下单开始到启运需要多长时间,以月为单位(例如:3个月,6个月)
select orderid,orderdate,shipdate,
round(months_between(shipdate,orderdate)) as diffence
from t_order;
7、
- 创建Customer表
- 向Customer表中插入数据
1001 ‘zs’ ’12-12月-13’ 200
1002 ‘ls’
1003 ‘ww’ ’12-12月-87’ 200
insert into customer values(1001,'zs','12-12月-13',200);
insert into customer values(1002,'ls',null,null);
--等价 insert into customer(cust_id,cname) values(1002,'ls');
insert into customer values(1003,'ww','12-12月-87',200);
(3)构造SQL语句,列出Customer数据表中每个客户的信息。如果客户生日未提供,则该列显示“not available”;如果没有余额信息,则显示“no account”
(4)构造sql语句,列出生日在1987年的客户的全部信息
select cname,
nvl(to_char(birthday,'yyyy-mm-dd'),'not available'),
nvl(to_char(account),'no account')
from customer;
select * from customer where to_char(birthday,'yyyy')='1987';