MySQL php插入到。。。选择:使用逗号连接$var+value

MySQL php插入到。。。选择:使用逗号连接$var+value,php,mysql,sql,Php,Mysql,Sql,我需要使用这个php查询: INSERT INTO table1(id,picture) SELECT id, $var.picture from table2 其中$var是 之前的示例: ID = 1 picture = 'flower.jpg' 示例如下: ID = 1 picture = 'http://example.com/images/flower.jpg' 我如何加入SELECT$var并将逗号表示为不起作用…您可以使用concat$var,'.picture' 然而,你不

我需要使用这个php查询:

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

之前的示例:

ID = 1
picture = 'flower.jpg'
示例如下:

ID = 1
picture = 'http://example.com/images/flower.jpg'
我如何加入SELECT$var并将逗号表示为不起作用…

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


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

如果我正确理解了您的问题,这应该可以做到:

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

您可以在php端执行它。只需使用以下方法实例化一个临时变量,该变量将包含格式正确的列:


由于您不使用prepared query,我还建议对字符串使用addslashes,以防止查询的格式错误。它会生成语法错误。所以我使用了:INSERT INTO table1id,picture SELECT id,CONCAT,picture FROM table2
// 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);