Tik*_*TaZ 4 mysql foreach select insert
我想做这样的查询:
INSERT INTO `gesdoc_docs_authorizations`
(`gesdoc_docs_id`, `id_profil_do`, `autorisation`, `personal_doc`)
VALUES (
(SELECT `id`
FROM `gesdoc_docs`),
(SELECT `id`
FROM `users_profil_do`),
1, 0
);
Run Code Online (Sandbox Code Playgroud)
表gesdoc_docs有 40 行,users_profil_do有 700 行。我需要将users_profil_do40 行中的每一行andco_gesdoc_docs关联起来(所以通常我的查询将插入 28,000 行)。是否可以 ?我怎样才能用 mysql 查询做到这一点?
感谢帮助 :)
VALUES从 插入时不使用关键字SELECT。
INSERT INTO gesdoc_docs_authorizations
(`gesdoc_docs_id`, `id_profil_do`, `autorisation`, `personal_doc`)
SELECT g.id, d.id, 1, 0
FROM gesdoc_docs g
JOIN users_profil_do d
Run Code Online (Sandbox Code Playgroud)
如果不使用ON子句指定联接条件,它将把所有行视为匹配,这将导致两个表的完整笛卡尔积。