不可不知的Oracle常用技巧
表复制
1.方法一:复制表结构和数据
create table temp_clientloginuser
as
select distinct userid from tbuserloginlog;2.方法二:仅复制数据
-- 如果表结构一样
insert into mytable select * from yourtable;-- 如果表结构不一样
insert into mytable(column1,column2...) select column1,column2 ... from yourtable;3.方法三:仅复制表结构
create table tmp_tba
as 
select * from tmp_tbb where 1=2;Oracle中日期函数
sysdate :  --系统日期 2013-2-28 15:55:33
to_date('2004-05-07 13:23:44','yyyy-mm-dd hh24:mi:ss')
to_date('2004-05-07 13:23:44','hh24')  --13
sysdate+1  --加一天
sysdate+1/24 --加1小时
sysdate+1/(24*60) --加1分钟
sysdate+1/(24*60*60) --加1秒钟
select to_date('2003-11-17','yyyy-mm-dd')+1 from dual;  --2003-11-18
add_months(sysdate,1)  --加一个月
add_months(sysdate,12) --加一年删除一列
oracle 删除一列
alter table tb_user drop column  username;常用视图
-- oracle 查询分区表的行数,使用情况等信息
SELECT * FROM user_tab_partitions-- oralce查询用户作业
select * from user_jobs;新建job
DECLAREv_job NUMBER;
BEGINdbms_job.submit(v_job, 'pr_tbclient_stat(trunc(SYSDATE));', trunc(SYSDATE), 'trunc(sysdate)+1+3/24');--3点执行jobCOMMIT;
END;Oracle 使用游标循环集合中的每一个元素
beginfor v1 in (select bookid,bookname from tmp_2014415_book t) loopdbms_output.put_line(v1.bookid||'    '||v1.bookname);end loop;
end;