我希望在 MySql 中执行此语句,仅当该值不同于 0 时,我才需要从表domains 列 webId 传递该值,如果是这样,我需要它将该值复制到表customers 列referwebId 中。下面的代码给了我错误:字段列表中的未知表“域”.. 怎么了? 谢谢
BEGIN
if domains.webId NOT LIKE '0' then
insert into customers (referWebId) select
webId from domains;
END IF;
END
最佳答案
为什么不做这样的事情
insert into customers (referWebId)
select webId from domains
where webId NOT LIKE '0';
根据您发布的代码,您不能简单地这样检查
if domains.webId NOT LIKE '0' then
而是使用INSERT ... ON DUPLICATE KEY UPDATE 像下面这样
insert into customers (referWebId)
select webId from domains where webId NOT LIKE '0'
on duplicate key update referWebId = values(referWebId);
关于mysql - 使用 MySql 条件在表之间传递值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24498586/