我试图从两个选择语句中插入两个值,例如:
INSERT INTO manytomany_relation_a_and_b_tables (a_id, b_id) VALUES
(SELECT id FROM a_table WHERE someColumnFromA="SOMETHING"),
(SELECT id FROM b_table WHERE someColumnFromB="SOMETHING");
Run Code Online (Sandbox Code Playgroud)
显然是不行的,但是怎样才能达到我想要的效果呢?
如果每个子查询仅SELECT返回一个值,则可以使用以下语法:INSERT INTO ... SELECT
INSERT INTO manytomany_relation_a_and_b_tables (a_id, b_id)
SELECT (SELECT id FROM a_table WHERE someColumnFromA="SOMETHING"),
(SELECT id FROM b_table WHERE someColumnFromB="SOMETHING")
Run Code Online (Sandbox Code Playgroud)
否则,您需要指定一个条件,将两个表连接在一起并JOIN在语句SELECT的查询中执行INSERT。
| 归档时间: |
|
| 查看次数: |
2483 次 |
| 最近记录: |