0

我有一个表 m4zbv_mt_cfvalues 并且如果在 cf_id 和 link_id 中不存在具有相同值的记录,我想插入一条记录

我喜欢对 select 语句中的所有记录执行此插入操作,link_id 应该用于第一个条件和插入。

INSERT INTO m4zbv_mt_cfvalues (cf_id, link_id,value) 
 SELECT 87, link_id ,1
 FROM dual 
 WHERE NOT EXISTS
    ( SELECT *
      FROM m4zbv_mt_cfvalues
      WHERE cf_id = 87
        AND link_id = link_id
    )
    SELECT link_id from from m4zbv_mt_links where Upper(link_name) like'%APPLIANCE  DEFAULT PASSWORDS%' ;

如果我提供所有值,则插入工作。当我添加 Select link_id 语句时它停止工作。我不知道如何从表 m4zbv_mt_links 中获取有关选择条件和 link_id 的所有记录

谢谢你的帮助

曼弗雷德

4

1 回答 1

0

你的代码是这样的

 SELECT link_id from from

只需删除一个FROM

尝试这个

   INSERT INTO m4zbv_mt_cfvalues (cf_id, link_id,value) 
    SELECT 87, link_id ,1
    FROM dual 
    WHERE NOT EXISTS
             ( SELECT *
              FROM m4zbv_mt_cfvalues
              WHERE cf_id = 87
              AND link_id = (SELECT link_id from m4zbv_mt_links where Upper(link_name) like'%APPLIANCE  DEFAULT PASSWORDS%')
)
 ;
于 2013-01-31T17:40:12.477 回答