Mysql 如何将子查询作为返回多行的列值插入?
我需要使用子查询作为一列值,使用静态值作为第二列值,将多个元组插入表中。 我该怎么做呢? 我的SQL知识不是很广博,所以我想知道你们能否帮我澄清一下 这是一个无效的查询,显示了我试图实现的目标Mysql 如何将子查询作为返回多行的列值插入?,mysql,sql,Mysql,Sql,我需要使用子查询作为一列值,使用静态值作为第二列值,将多个元组插入表中。 我该怎么做呢? 我的SQL知识不是很广博,所以我想知道你们能否帮我澄清一下 这是一个无效的查询,显示了我试图实现的目标 INSERT INTO deleted_messages (message_id, account_id) VALUES (( SELECT message_id FROM messages WHERE conversation_id = 23 ), 42); 子查询返回一个具有多个“message_
INSERT INTO deleted_messages (message_id, account_id) VALUES ((
SELECT message_id FROM messages
WHERE conversation_id = 23
), 42);
子查询返回一个具有多个“message_id”值的表(这正是我想要的)
我想要的结果是:
Table: deleted_messages
id | message_id | account_id
-------------------------
1 | 25 | 42
2 | 36 | 42
3 | 94 | 42
如果我需要澄清,请告诉我。
提前谢谢 只需使用
insert。选择
,无值:
INSERT INTO deleted_messages (message_id, account_id)
SELECT message_id, 42
FROM messages
WHERE conversation_id = 23;
只需使用
insert。选择
,无值:
INSERT INTO deleted_messages (message_id, account_id)
SELECT message_id, 42
FROM messages
WHERE conversation_id = 23;
您还需要从子查询中选择静态值,如下所示:
INSERT INTO deleted_messages (message_id, account_id)
SELECT message_id, 42 FROM messages
WHERE conversation_id = 23;
您还需要从子查询中选择静态值,如下所示:
INSERT INTO deleted_messages (message_id, account_id)
SELECT message_id, 42 FROM messages
WHERE conversation_id = 23;
非常感谢。这正是我需要的。我会继续复习SQL插件的,哈哈。如果可以的话,我会接受这个答案。谢谢!这正是我需要的。我会继续复习SQL插件的,哈哈。如果可能的话,我会接受这个答案