个人常用的sql脚本语句

来源:互联网 发布:数据保密协议模板 编辑:程序博客网 时间:2024/05/16 01:27

SQL语句汇总

1.SQL语句排序语句
select * from 【表名】 order by 【表字段】 ASC ; --升序
select * from 【表名】 order by 【表字段】 DESC ; --降序


2.检查用户名是否有重复的账号
select  NAME,count(id) from T_USER   group by NAME     having count(id)>1

3.通过关联字段update表中字段

update T_ILLEGAL_POLT aset a.illegal_action =( select b.id from T_ILLEGAL_ACTION2 b where a.description = b.alias);


4表空间创建
4.1创建临时表空间 

CREATE  TEMPORARY TABLESPACE TE_TEMP  TEMPFILE 'E:\oracle\product\10.2.0\oradata\orcl\TE_TEMP.DBF' SIZE 1024M  REUSE  AUTOEXTEND  ON NEXT 100M MAXSIZE 2048M  EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1024K; 


4.2创建数据表空间 

CREATE   TABLESPACE TE  DATAFILE 'E:\oracle\product\10.2.0\oradata\orcl\TE.DBF'  SIZE 1024M  REUSE  AUTOEXTEND  ON NEXT 100M  MAXSIZE 4096M  EXTENT MANAGEMENT LOCAL UNIFORM SIZE 1024K; 

4.3删除用户TE3登录
drop user TE cascade;     

4.4创建用户并指定表空间  
create user TE identified by TE default tablespace TE temporary tablespace TE_TEMP; 

4.5用户授权 
grant connect,resource,dba to TE;

4.6导入数据库
imp TE/TE@TE full=y file=E:\comit.te\data\ZHIFADATAtebei2011-12-26.dmp


5.增加表字段
alter table【表名】 add 【字段名】 【字段类型】;
例子:
alter 【表名】 add  name    VARCHAR2(255) default ''


5.1修改表字段属性或字段名
alter table【表名】 modify 【字段名】 【字段类型】;

5.2删除表字段
alter table 【表名】 drop column 【字段名】;


6.数据库导入语句:
  
1. 获取帮助    imp help=y  
2. 导入一个完整数据库   imp system/manager file=bible_db log=dible_db full=y ignore=y  
3. 导入一个或一组指定用户所属的全部表、索引和其他对象   imp system/manager file=seapark log=seapark fromuser=seapark imp  system/manager file=seapark log=seapark fromuser=(seapark,amy,amyc,harold)  
4. 将一个用户所属的数据导入另一个用户   imp system/manager file=tank log=tank fromuser=seapark touser=seapark_copy  imp system/manager file=tank log=tank fromuser=(seapark,amy)  touser=(seapark1, amy1) 
5. 导入一个表   imp system/manager file=tank log=tank fromuser=seapark TABLES=(a,b) 
6. 从多个文件导入   imp system/manager file=(paycheck_1,paycheck_2,paycheck_3,paycheck_4)  log=paycheck, filesize=1G full=y 
7. 使用参数文件    imp system/manager parfile=bible_tables.par  bible_tables.par参数文件:  #Import the sample tables used for the Oracle8i Database Administrator's  Bible. fromuser=seapark touser=seapark_copy file=seapark log=seapark_import  
8. 增量导入  imp system./manager inctype= RECTORE FULL=Y FILE=A  Oracle imp/exp  C:Documents and Settingsadministrator>exp help=y  
9.导入  自己电脑imp TE3/TE3@136 full=y file=E:\新建文件夹\ZHIFADATA2010-06-211330.dmp
10. 导入一个表 imp TE3/TE3@136 TABLES=(BM_OWNER_MASSAGE,WORK_PERSON,BM_CAR_INFO) file=E:\新建文件夹\ZHIFADATA2010-06-211330.dmp




7.oracle日期加减
7.1oracle时间加法

select sysdate,add_months(sysdate,12) from dual;        --加1年select sysdate,add_months(sysdate,1) from dual;        --加1月select sysdate,to_char(sysdate+7,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1星期select sysdate,to_char(sysdate+1,'yyyy-mm-dd HH24:MI:SS') from dual;   --加1天select sysdate,to_char(sysdate+1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1小时select sysdate,to_char(sysdate+1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1分钟select sysdate,to_char(sysdate+1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --加1秒
7.2oracle时间减法
select sysdate,add_months(sysdate,-12) from dual;        --减1年select sysdate,add_months(sysdate,-1) from dual;        --减1月select sysdate,to_char(sysdate-7,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1星期select sysdate,to_char(sysdate-1,'yyyy-mm-dd HH24:MI:SS') from dual;   --减1天select sysdate,to_char(sysdate-1/24,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1小时select sysdate,to_char(sysdate-1/24/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1分钟select sysdate,to_char(sysdate-1/24/60/60,'yyyy-mm-dd HH24:MI:SS') from dual;  --减1秒

8.oracle计算时间差函数
8.1两个Date类型字段:START_DATE,END_DATE,计算这两个日期的时间差:

天:ROUND(TO_NUMBER(END_DATE - START_DATE))小时:ROUND(TO_NUMBER(END_DATE - START_DATE) * 24)分钟:ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60)秒:ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60)毫秒:ROUND(TO_NUMBER(END_DATE - START_DATE) * 24 * 60 * 60 * 1000)

8.2日期格式参数含义说明
D 一周中的星期几DAY 天的名字,使用空格填充到 9 个字符DD 月中的第几天DDD 年中的第几天DY 天的简写名IW ISO 标准的年中的第几周IYYY ISO 标准的四位年份YYYY 四位年份YYY,YY,Y 年份的最后三位,两位,一位HH 小时,按 12 小时计HH24 小时,按 24 小时计MI 分SS 秒MM 月Mon 月份的简写Month 月份的全名W 该月的第几个星期WW 年中的第几个星期    

8.3日期时间间隔操作
当前时间减去 7 分钟的时间select sysdate,sysdate - interval '7' MINUTE from dual当前时间减去 7 小时的时间select sysdate - interval '7' hour from dual当前时间减去 7 天的时间select sysdate - interval '7' day from dual当前时间减去 7 月的时间select sysdate,sysdate - interval '7' month from dual当前时间减去 7 年的时间select sysdate,sysdate - interval '7' year from dual时间间隔乘以一个数字select sysdate,sysdate - 8 *interval '2' hour from dual

8.4日期到字符操作
select sysdate,to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-mm-dd hh:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-ddd hh:mi:ss') from dualselect sysdate,to_char(sysdate,'yyyy-mm iw-d hh:mi:ss') from dual

8.5字符到日期操作
select to_date('2003-10-17 21:15:37','yyyy-mm-dd hh24:mi:ss') from dual

9.代替脚本
update t_dim_illegaltime t set t.illegalquarter=replace(illegalquarter,'第一季度', '1第一季度');












0 0
原创粉丝点击