Mysql和PDO:使用Select和Parameter插入

时间:2014-04-13 22:08:55

标签: mysql pdo

是否可以将参数值放入插入的select语句中?我试图解决这个问题并没有太大的成功。

我显然知道下面的查询是错误的,但我不知道从哪里开始。

查询

 INSERT INTO test
 SELECT other.col1, other.col2, :somevalue
 FROM other

1 个答案:

答案 0 :(得分:0)

您尝试的是语法上有效且应该正常工作。除非目标表具有完全相同的列数,否则INSERT语句必须包含列列表:

INSERT INTO test (col1, col2, col3) 
  SELECT col1, col2, :somevalue
  FROM other

请注意,此语法适用于PDO绑定参数,因为:somevalue应为字符串文字。如果您一直希望:somevalue是动态确定的列名而不是刺痛,那将无法按预期工作 - 您将获得一个文字字符串值而不是列名。