MySQL INSERT查询

时间:2010-03-31 21:55:39

标签: mysql insert

我需要一个查询来执行以下操作: 从表格国家/地区

中找到country ='UK'的countryID

然后使用

中的找到值
INSERT into towns (id, country_fk, name)
values (1, <value_found>, 'London').

这可能吗?

UPDATE 我需要存储一次这样的值,以便我可以在多个INSERTS中使用它(大约100个)

3 个答案:

答案 0 :(得分:5)

是的,这是可能的。一种选择是使用INSERT ... SELECT syntax,如下所示:

INSERT INTO towns (id, country_fk, name)
SELECT 1, countryID, 'London' FROM countries WHERE country = 'UK';

答案 1 :(得分:1)

您可以在那里使用子查询:

INSERT into towns (id, country_fk, name)
values (1, (SELECT countryID from countries where country = 'UK'), 'London')

答案 2 :(得分:1)

insert into towns(id, countrt_fk, name)
select 1 , countrt_fk , 'London' from Countries where country = 'UK'