我有一个新手问题...
我有两个表:
parentTable
-----------
id_user int(11) not null auto increment primary key,
email varchar(64),
pass varchar(64)
childTable
----------
id_user int(11) not null,
name varchar(64),
address varchar(512),
foreign key (id_user) references parentTable(id_user)
on update cascade
on delete restrict
现在我可以插入:
insert into childTable (id_user) select id_user from parentTable where id_user = '1'
但我只想插入名称和地址值。
抱歉新手问题,我潜伏了一天一无所获。
预先感谢您的回复。
最佳答案
查询中有趣的部分是您知道您尝试选择插入的 id_user
- 它在您的 WHERE
子句中.
如果您始终知道 id_user
,则可以跳过查询的额外 SELECT
部分并直接执行:
INSERT INTO childTable (id_user, name, address) VALUES (1, 'some name', '123 test street');
如果您出于某些其他原因需要额外的 SELECT
,您可以将 name
/address
值直接附加到字段中 -列表,像这样:
INSERT INTO childTable (id_user, name, address)
SELECT id_user, 'some name', '123 test street' FROM parentTable WHERE id_user = '1';
关于mysql - 插入子mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12123644/