MySQL php INSERT INTO ... SELECT:使用逗号连接$ var + value

时间:2016-08-05 12:03:42

标签: php mysql sql

我需要使用这个php查询:

INSERT INTO table1(id,picture) SELECT id, $var.picture from table2

$ var是" http://example.com/images/"。

示例(之前):

ID = 1
picture = 'flower.jpg'

示例(之后):

ID = 1
picture = 'http://example.com/images/flower.jpg'

如何加入SELECT $ var和picture(逗号无效)...

3 个答案:

答案 0 :(得分:1)

如果我正确地理解了你的问题,这应该可以解决问题:

INSERT INTO table1(id,picture) SELECT id, CONCAT($var, picture) FROM table2

答案 1 :(得分:0)

您可以使用concat($var, '.picture')

但是,你不应该这样做。相反,您应该将$var值作为参数传递给查询。我会在应用程序端连接值,但您也可以将concat()与参数一起使用。

答案 2 :(得分:0)

你可以在php端执行它。只需使用sprintf()

实例化一个包含格式正确的列的临时变量
// Get the data 
$id         =   1;
$var        =   'http://example.com/images/';
$picture    =   'flower.jpg';
$column     =   sprintf('%s%s', $var, $picture);

// Set the query
$query  =   sprintf('   INSERT INTO  table1 (id, picture)
                           SELECT       %s, %s
                           FROM         table2;', $id, $column);