1、描述TO_CHAR和TO_DATE函数的用法。
TO_CHAR(d|n[,fmt]) 把日期和数字转换为制定格式的字符串。fmt是格式化字符串。
TO_DATE(x [,fmt]) 把一个字符串以fmt格式转换为一个日期类型。
举例:
select to_char(sysdate,'yyyy-mm-dd') "char",
to_date('2018-09-28','yyyy-mm-dd') "date"
from dual
2、描述EXTRACT函数的用法。
EXTRACT(fmt FROM d),提取日期中的特定部分。
fmt为:YEAR、MONTH、DAY、HOUR、MINUTE、SECOND。其中YEAR、MONTH、DAY可以为DATE类型匹配,
也可以与TIMESTAMP类型匹配;但是HOUR、MINUTE、SECOND必须与TIMESTAMP类型匹配。
举例:
select sysdate "date",
extract(year from sysdate) "year" ,
extract(month from sysdate) "month",
extract(day from sysdate) "day",
extract(hour from systimestamp) "hour",
extract(minute from systimestamp) "minute",
extract(second from systimestamp) "second"
from dual;
3、你知道有哪些关于日期函数的用法?
ADD_MONTHS(d,n) 在某一个日期d上,加上指定的月数n,返回计算后的新日期。d表示日期,n表示要加的月数。
LAST_DAY(d) 返回指定日期当月的最后一天
ROUND(d[,fmt]) 返回一个以fmt为格式的四舍五入日期值,d是日期,fmt是格式模型。默认fmt为DDD,即月中的某一天。
EXTRACT(fmt FROM d) 提取日期中的特定部分。
举例:
4、产生一个用于DEPT表的主键值的序列,序列起始值是100,最大值是500,增长步长是10。
create sequence sequence_dept
start with 100
maxvalue 500
increment by 10
5、用序列产生DEPT表的主键,向DEPT表中插入3条记录。
insert into dept values (sequence_dept.nextval,'A','B')
insert into dept values (sequence_dept.nextval,'C','D')
insert into dept values (sequence_dept.nextval,'E','F')
6、为DEPT表创建一个同义词。
create synonym synonym_dept for dept;(切换到sys下执行)
7、创建一个视图包括EMP表的EMPNO,ENAME,JOB,部门表的DNAME列,只能包含销售部的记录。
grant create view to scott;(在sys下给scott赋予create view的权限)
create view view_sale as select emp.empno,ename,job,dept.dname from emp join dept on emp.deptno=dept.deptno and dept.dname='SALES' select * from view_sale
8、为EMP表的ENAME列创建唯一索引。
create unique index view_emp on emp(ename)
9、为EMP表的SAL列创建一个普通索引。
create index view_sal on emp(sal)
10、以学期和学生姓名为名称比如(S2XiaoMei)创建一个表空间,该表空间是以学生姓名为用户的默认表空间。
grant create tablespace to scott;(在sys中给scott赋予create tablespace权限)
create tablespace S4wangrui
datafile 'D:\BigData\wr.ora' size 10m
create user wangrui identified by 123456 default tablespace S4wangrui