/*****************************************
修改表名
******************************************/
ALTER TABLE 原表名 RENAME TO 修改后的表名 ;
/****************************
用system查看表是所那个用户的
*****************************/
select owner,table_name from dba_tables where table_name='<table_name>';
//表是否存在
SELECT COUNT(*) FROM USER_TABLES WHERE TABLE_NAME = '<表名大写>';
0不存在,1存在
/*****************************************
删除列
******************************************/
alter table table_name drop Column field_name
例:
alter table NOR_NOAA_INFO drop column WRONG_NO;
/*** 添加字段 *********/
alter table hetong_da add(FH_TYPE VARCHAR2(40));
/*修改字段类型*/
alter table nor_dtmt_info modify (user_no number(10));
或者
try:
alter table tbname add col_temp varchar2(..);
update tbname st col_temp=col_name;
update tbname set col_name=null;
commit;
alter table tbname modify (col_name clob);
update tbname set col_name=col_temp;
alter table tbname drop column col_temp;
/*****用SQL语句抓出表中栏位的字段大小等相关信息 **/
desc 表名;
/***如何使用SQL修改字段长度? **/
alter table 表名 modify(字段 varchar2(20), 字段 varchar2(50))
/****在数据库中随机抽N条记录****/
select rownum,device_number from info_cdma where rownum=round(dbms_random.value*n)
/****删除重复数据*****/
SELECT * from cdma_local_tmp a where a.rowid!=(select max(rowid) from cdma_local_tmp b
where a.user_no=b.user_no)
/**修改字段名** address 为原字段,city为修改后字段/
ALTER TABLE tablename RENAME COLUMN address TO city;
//update 多个字段
UPDATE staff_base_info t
SET (T.CDMA_NUM,T.CDMA_PAY)=
(SELECT B.CDMA_NUM,B.CDMA_PAY from temp22 B where t.staff_id=b.staff_id )
//直接删除表数据
truncate table nor_detainment_info
//读表的字段属性
SELECT * FROM USER_TAB_COLUMNS k where k.TABLE_NAME = 'ERP_POP_TYPE_LOG'
//查树形结构
select dept_id, dept_name,level
from code_dept m
start with dept_id = 530
connect by prior dept_id = parent_dept_id
order by level
//查最大ID别一种方法
select *
from
(
select row_number() over(partition by m.userno order by m.examdate desc) rno,
m.*
from adsl_visit_exam m
)
where rno =1
浙公网安备 33010602011771号