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