- sqlldr配置文件:
新建vim input.ctl
load data
infile '文件名'
append
into table sqlldr_test
fields terminated by ','
trailing nullcols
(
user_no,
user_rate,
month_id
)
执行sqlldr
sqlldr gz/gz@172.XXX.XX.XXX/rac control = input.ctl
- 复制SQL表:
既复制表结构也复制表内容的SQL语句:
CREATE TABLE tab_new AS SELECT * FROM tab_old;只复制表结构不复制表内容的SQL语句:
CREATE TABLE tab_new AS SELECT * FROM tab_old WHERE 1=2;不复制表结构,只复制内容的sql语句:
insert into tab_new select * from tab_old;
或者SELECT vale1, value2 into Table2 from Table1
正则匹配忽略大小写:
regexp_like(keyword,’hello’,’i’) 对hello中的每个字母忽略大小写
以表A为标准剔除掉B中多余的部分 :
现有表A(少,标准)和B(多),以字段keyword作为检索列表
select * from 表B where keyword in (select keyword from 表A)
SQL增加列、修改列、删除列:
1.增加列:alter table tableName add columnName varchar2(30)
2.修改列类型:
alter table tableName alter column columnName varchar(4000)
3.修改列名称:
EXEC sp_rename ‘tableName.column1’ , ‘column2’ (把表名为tableName的column1列名修改为column2)
4.删除列:
alter table tableName drop column columnName
SQL插入表:
表a、b表存在(且两表结构一样) :
insert into b select * from a若两表只是有部分(字段)相同,则 :
insert into b(col1,col2,col3,col4,…) select col1,col2,col3,col4,… from a where…表b不存在:
select * into b from a
select (字段1,字段2,…) into b from a
sql修改某个字段的值:
update 表名 set keyword=xxx where tag=’yyy’;
keyword要修改的字段名,tag为条件插入一行数据:
insert into table values(‘keyword’,’tag’)