我想创建一个 INSERT 查询,但就像在标题中一样 - 仅当 tab2 没有记录时。然后查询添加带有空值的 tab1 记录。我想改变它。当 tab2 没有记录时,查询不会向 tab1 添加记录。我该怎么做?
查询当前如下所示:
INSERT INTO `tab1` (SELECT `id`, `value`, `another_value` FROM `tab2`);
好吧,我再解释一下。
我有 tab2,如果tab2
. status
=1 那么这些记录将被复制到tab1
. 但是如果tab2
没有任何记录,则在tab1
将添加记录,其中id
下一个值比之前的id
值和其他值为0或NULL。我想更改它,如果tab2
没有记录,则查询不会将空记录添加到tab1
.
我真正的查询是:
INSERT INTO `troops_support` (SELECT NULL AS `id`, `from`, `fromType`, `to`, `toType`, GROUP_CONCAT(`army` SEPARATOR ":") FROM `army_actions` WHERE `type`=0 AND (`start`+`duration`)<=UNIX_TIMESTAMP());