有关MySQL的条件声明

时间:2013-12-16 09:10:03

标签: mysql stored-procedures if-statement conditional-statements exists

我想做点什么

IF (EXISTS (select * from Table1 where <Condition>))
{
    INSERT INTO Table2 ...
}
ELSE
{
    INSERT INTO Table3...
    <Do some more manipulations>
}

AFAIK我只能使用IF作为陈述的一部分。

有办法吗?

谢谢,

==编辑1 ==
我想将此逻辑作为存储过程的一部分。

2 个答案:

答案 0 :(得分:1)

试试这个:

IF EXISTS (SELECT * FROM Table1 WHERE <CONDITION>) THEN 
BEGIN
    INSERT INTO Table2 ...
END
ELSE
BEGIN
    INSERT INTO Table3...
    <DO SOME more manipulations>
END
END IF

检查 MySQL

中的IF Statement

答案 1 :(得分:0)

唯一的方法是调用存储过程。

使用存储过程,您可以定义变量,检查多个条件,执行多个语句等 但是,只要最多IFEXISTSELSE,您就可以直接执行2个语句。

参考文献 MySQL: CREATE PROCEDURE Syntax