0
我必須向表中添加許多註冊表,並且我需要幫助,因爲我開始使用PL/SQL對於PLSQL中的每一行檢查是否存在某個值,如果不存在,插入一條記錄
我有一個包含三列(ID,KEY,VALUE)的表格。 ID必須是唯一的,如果KEY沒有值叫'process_name',那麼必須創建一個新的註冊表,其值必須與ID相同。
例如,我可以在我的表
ID KEY VALUE
A cycles 4
A process_name A
A number 2
B cycles 3
B number 2
C cycles 5
所以有這個,我需要插入2條記錄到數據庫:
B process_name B
C process_name C
我應該如何開始創建腳本?
感謝
SOLUTION
INSERT INTO my_table
(SELECT distinct my_table.ID, 'process_name', my_table.ID
FROM my_table
WHERE my_table.ID NOT IN (SELECT distinct my_table.ID
FROM my_table
WHERE key = 'process_name'));
您使用的是哪個版本的Oracle? – Dan 2012-03-08 14:28:47
我正在使用PL/SQL Developer 8.0.4.1514 – 2012-03-08 14:50:06