0
我有一個包含三個複合主鍵(列customer_id,system_origin,policy_number)的多個列的表。 表創建如下:如何在插入新值之前檢查複合主鍵
Create table LOST_MEMBER_ACCESS_LOG (
Customer_id varchar2(20) NOT NULL,
System_Origin varchar2(20) NOT NULL,
Policy_Number varchar2(20) NOT_NULL,
PRIMARY_KEY(Customer_id,System_Origin, Policy_Number)
);
我必須寫一個存儲過程,其首創檢查的要求,如果已存在某行鍼對CUSTOMER_ID,system_origin,policy_number然後將其與更新已有的行獨特的組合新值或插入新行。
MERGE是您正在查找的命令。 [瞭解更多信息](https://docs.oracle.com/cd/B28359_01/server.111/b28286/statements_9016.htm#SQLRF01606) – APC
對於兩種情況,您都可以使用'LEFT JOIN'檢查值的存在情況INSERT '和'UPDATE',但你需要兩次寫入才能分離查詢'OR',你可以直接在表中查詢,然後有條件地設置查詢。 – Susang