我有3张桌子.
A:
----
ID |
----
1 |
---
2 |
---
3 |
---
B:
--------
config |
--------
paid |
-----------
dispatch |
-----------
delivered |
Run Code Online (Sandbox Code Playgroud)
我想要的是我想在表C中插入值,这是表A*表B中的所有值.
然后C应该是
C:
-------------------
A.ID | B.config | Value
-------------------
1 | paid | True
2 | paid | True
3 | paid | True
1 | dispatch | True
2 | dispatch | True
3 | dispatch | True
1 | delivered | True
2 | delivered | True
3 | delivered | True
Run Code Online (Sandbox Code Playgroud)
现在问题是我可以使用Single Mysql语句执行此操作,或者我必须编写带有嵌套for循环的脚本来执行此操作.
使用INSERT INTO ... SELECT带有交叉连接的:
INSERT INTO C (ID, config, Value)
SELECT a.ID, b.config, 'True'
FROM A a
INNER JOIN B b
Run Code Online (Sandbox Code Playgroud)
MySQL中的内连接没有ON子句默认为交叉连接,尽管我们也可以使用CROSS JOIN.
| 归档时间: |
|
| 查看次数: |
162 次 |
| 最近记录: |