MYSQL:是否可以使用IF语句来控制执行哪个查询?

时间:2018-09-21 15:26:59

标签: mysql

我想检查表中是否存在记录,然后根据结果,我需要在一个表中插入信息,或在其他表中插入其他信息。

在MSSQL中,这似乎非常简单,但是由于我在MySQL中的有限技能,这实际上是不可能的。

这是我要执行的操作的示例片段(无效)。

SELECT 
IF( EXISTS ( SELECT 1 FROM `Authors` WHERE Name = 'Mike' )
,
	INSERT INTO `Unauthorized` ('col1', 'col2', 'col3') VALUES ('val1', 'val2', 'val3')
,
	INSERT INTO `Authorized` ('col1', 'col2', 'col3') VALUES ('val1', 'val2', 'val4')
);

当然,我可以使用PHP进行决策,这是我通常要做的,但是该解决方案需要两个单独的SQL查询,我想看看是否有可能避免这种情况。

谢谢。

0 个答案:

没有答案