mysql - 如何使用子查询作为插入值?

标签 mysql insert subquery

我有这样的查询:

INSERT INTO table1(col1,col2,col4)
            VALUES (1, (select col1 from table2 where col2 = :param), 1);

上述查询也有效。现在我想使用 table2 中的两列,如下所示:

INSERT INTO table1(col1,col2,col3,col4)
            VALUES (1, (select col1,col2 from table2 where col2 = :param), 1);

但是第二个查询不起作用,我该如何解决?

最佳答案

INSERT INTO table1(col1, col2, col3, col4)
select 1, col1, col2, 1 
from table2 
where col2 = :param;

关于mysql - 如何使用子查询作为插入值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34645807/

相关文章:

mysql根据票证状态查询

java - 从关系数据库检索数据

使用子查询的 MySql SELECT 无法按预期工作

php - 子查询 ActiveRecord Yii

mysql - 从 Travel_point 表中获取 tp.address_from 和 tp.address_to

php - 如何在 PHP 中获取 MySQL 表的最后插入 ID?

MySQL:null 在 INSERT 和 SELECT 语句中变为 0

PHP/SQL 将值插入表并将一个值设置为唯一后,无法插入更多值

java - 将ArrayList插入Oracle表中

mysql子查询字段不存在但查询全部