Mysql 如果为NULL,则执行SQL插入
是否有一种纯SQL的方法来实现这一点 我有一个苹果表:Mysql 如果为NULL,则执行SQL插入,mysql,Mysql,是否有一种纯SQL的方法来实现这一点 我有一个苹果表:id,price,还有另一个apple\u info:apple\u id,color 对于apples中的每一行,我想在apple\u info中添加一个对应的行,如果它还不存在的话。找不到任何此类示例。请尝试以下操作: insert into apple_info (apple_id, color) select a.id, 'some_color' from apples a left outer join apple_info
id,price
,还有另一个apple\u info
:apple\u id,color
对于apples
中的每一行,我想在apple\u info
中添加一个对应的行,如果它还不存在的话。找不到任何此类示例。请尝试以下操作:
insert into apple_info (apple_id, color)
select a.id, 'some_color'
from apples a
left outer join apple_info ai
on (a.id = ai.apple_id)
where ai.apple_id is null;
您将在apple\u info
上插入一行,其中包含不存在的apple\u id
和一个固定的color
值。我想这就是你想要的。使用:
是因为每个苹果都插进去了,还是在整个苹果桌上?如何为apple_信息中的插入提供颜色值?事后(这将是我选择的某个设定值)谢谢,这正是我的想法
LEFT-OUTER-JOIN
把我甩了,但结果证明它和MySQL中的LEFT-JOIN
是一样的:
INSERT IGNORE INTO apple_info(apple_id, color)
SELECT id, 'green' FROM apples