生產環境常用的sql

1、替換函數REPLACE()

REPLACE(String,from_str,to_str) 即:將String中所有出現的from_str替換爲to_str。

三個參數可以是字符或二進制數據類型;from_str不能爲空字符串 ('');不支持 text,ntext類型字段的替換

如果其中的一個輸入參數數據類型爲 nvarchar,則返回 nvarchar;否則 REPLACE 返回 varchar。

如果任何一個參數爲 NULL,則返回 NULL。

查詢
SELECT REPLACE('abcdefg bcd','bcd','xxx')
select city_name,REPLACE(city_name,'市','') as city from tmp_city
更新
update T_RISK set FILE_PATH = REPLACE (FILE_PATH,'webs','web') where FILE_PATH is not null;

2、表鎖

鎖表

鎖全表:select * from tablename where 1=1 for update
鎖部分行:select * from tablename where 字段1=參數1 for update

解鎖

--查看被鎖的表 
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id = a.object_id;
--查看那個用戶那個進程造成死鎖
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id = b.sid order by b.logon_time;
--殺鎖
alter system kill session'41,47817';

 3、查詢索引

根據表名查表的索引

 select INDEX_NAME,INDEX_TYPE FROM USER_INDEXES WHERE table_name='T_MCHT_ORDER_PAY_SERIAL';

根據索引名查索引詳細信息

select dbms_lob.substr(dbms_metadata.get_ddl('INDEX','IND_T_MCHT_ORDER_PAY_SERIAL_ID'))from dual;

 修改唯一索引

--修改唯一索引
--從BIZ_TYPE, ORG_PARTY_NO
--變更到BIZ_TYPE, ORG_PARTY_NO, SUB_BIZ_TYPE

--delete  indexes 
drop index IDX_CHARGE_PARTY_CONFIG;

-- Create/Recreate indexes 
create unique index IDX_CHARGE_PARTY_CONFIG on T_CHARGE_PARTY_CONFIG (BIZ_TYPE, ORG_PARTY_NO, SUB_BIZ_TYPE)
  tablespace USERS
  pctfree 10
  initrans 2
  maxtrans 255
  storage
  (
    initial 64K
    next 1M
    minextents 1
    maxextents unlimited
  );

4、修改表

modidy修改字段屬性

--單個字段
alter table T_CHARGE_PARTY_CONFIG modify  RATE_PER_TXN NUMBER;
--多個字段
alter table student modify(id number(4),studentName varchar2(100));

如果字段有數據,且類型不能直接修改,可以先修改原字段名SUB_ORG爲SUB_ORG_COPY,新增字段SUB_ORG(目標類型),把SUB_ORG_COPY中的數據轉換複製給SUB_ORG,刪除SUB_ORG_COPY

UPDATE 表名 SET SUB_ORG = CAST(SUB_ORG_COPY AS VARCHAR2(30));

alter添加字段

alter table T_CHARGE_PARTY_CONFIG add (SUB_ORG_NO VARCHAR2(32));

5、數據類型轉換函數

and to_char(crt_time, 'yyyyMMdd') >='20181101'
and crt_time >=to_date('2018-11-01 00:00:00','yyyy-mm-dd hh24:mi:ss')

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章