Oracle merge into語法簡介

Oracle 9i開始引入了merge into 語法,能夠同時對錶進行update或insert操做。固然是基於某個條件之上。sql

語法示例以下:code

MERGE INTO user u1  
USING (SELECT 1 AS id,2 AS name FROM dual) u2  
ON (u1.id = u2.id)  
WHEN MATCHED THEN  
    UPDATE SET u1.name = u2.name  
WHEN NOT MATCHED THEN  
    INSERT (id,name) VALUES(u2.id,u2.name);

能夠這麼理解:將u2合併入u1,條件爲 u1.id = u2.id。當條件匹配時,執行update語句,當不匹配時,執行insert語句。索引

--------------------------------table

操做索引相關sqlclass

select * from all_indexes where table_name='表名' and owner='用戶名';  --查詢某用戶下某張表的全部索引     
  
create index 索引名 on 表名 (列名) --建立索引  
  
alter index 舊索引名 rename to 新索引名;  --修改索引名稱  
    
ALTER INDEX 索引名 COALESCE; --合併索引  
    
ALTER INDEX 索引名 REBUILD;  --重建索引  
  
DROP INDEX 索引名; --刪索引  
  
--查詢表註釋  
select * from user_tab_comments where table_name='表名';  
--user_tab_comments:table_name,table_type,comments  
--相應的還有dba_tab_comments,all_tab_comments,這兩個比user_tab_comments多了ower列。  
  
--獲取字段註釋:  
select * from user_col_comments where table_name='表名';  
--user_col_comments:table_name,column_name,comments  
  
--查詢表約束  
select constraint_name from dba_constraints where table_name='表名'
相關文章
相關標籤/搜索