MySQL中的SELECT和INSERT语句的条件

时间:2013-11-02 19:40:48

标签: mysql sql select insert conditional-statements

我想在条件等于1时发出SELECT语句,这样就会执行INSERT语句,如果没有,所以它不会做任何事情。我认为你可以在我的代码中看到。

SET @var = 1;

SELECT IF(@var = 1, 
    INSERT INTO tabulka VALUES('value1','name1'),
    0
)

由于

2 个答案:

答案 0 :(得分:1)

您只需要一个IF语句,而不是SELECT。

if
    @var = 1
then
    insert into tabulka values('value1', 'name1');
end if

答案 1 :(得分:0)

得到了它!

http://sqlfiddle.com/#!2/66b33/1/0

create table test (
    int_field int, 
    str_field varchar(10) 
  );


set @var := 1;

insert into test 
   select  int_field, str_field 
   from    (select @var as int_field,
                   concat('var=',@var) as str_field 
           ) as temp
   where   @var=3;


set @var := 3;

insert into test 
   select  int_field, str_field 
   from    (select @var as int_field,
                   concat('var=',@var) as str_field 
           ) as temp
   where   @var=3; 


select * from test; 

结果:

int_field      str_field
3              var=3