1

我有一个 MySQL 过程,它使用来自另一个表的选择来插入一个表。因此

插入 my_tbl (fld1, fld2, fld3) 从 tbl_2 中选择 fld1, fld2, fld3 其中 tbl_2.id=33;

这很好用

但是,我现在需要从变量中的值(从传入的参数设置)中将另一个字段插入 my_tbl

有人可以解释将插入与选择中的字段(我已经拥有)与作为过程中变量的附加字段混合的语法。

非常感谢

标记

4

1 回答 1

1

只需像使用列或列表达式一样使用变量,除非它是字符串,否则不要用引号括起来。例如,如果您有变量@idValue

INSERT INTO my_tbl (fld1, fld2, fld3)
SELECT fld1, fld2, fld3 FROM tbl_2
where tbl_2.id = @idValue;

或者,如果您正在更新,例如您有一个变量@fld2Value

INSERT INTO my_tbl (fld1, fld2, fld3)
SELECT fld1, @fld2Value, fld3 FROM tbl_2
where tbl_2.id = @idValue;

这会将tbl2.fld1变量的值@fld2Value插入tbl2.fld3my_tbl中。插入的行数将取决于 返回的行数SELECT,并且@fld2Value对于每个插入的行都是相同的。

于 2013-06-26T20:29:57.617 回答