我想做这样的查询:
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
);
表gesdoc_docs
有40行,users_profil_do
有700行。
我需要为users_profil_do
中的每一行andco_gesdoc_docs
关联40行{所以通常我的查询将插入28,000行)。
可能吗 ?我怎么能用mysql查询呢?
感谢您的帮助:)
答案 0 :(得分:2)
从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
如果不使用ON
子句指定连接条件,它会将所有行视为匹配,这会产生两个表的完整笛卡尔积。