我有2个查询,我想在第二个查询中使用第一个查询的结果。 第一个查询如下:
从类别中选择ID,例如“关于我们”
假设此返回 Cat_id = 2
现在在我的第二个查询中,我需要使用第一个查询的结果 EG:我需要使用id(在查询1中返回)输入关于我们的子类别
第二个查询就像:
INSERT到sub_cat VALUES(NULL, 2 ,历史记录)INTO(subCat_id,Cat_id, '姓名')
那么如何将第一个SQL查询中返回的值用于我的第二个查询
答案 0 :(得分:2)
您可以在INSERT
查询中使用子查询:
INSERT INTO sub_cat (subCat_id, Cat_id, `name`)
VALUES (NULL, (SELECT id FROM category WHERE name = 'About Us'), 'History');
这假设您没有多个具有相同名称的类别。如果您的表 具有相同名称的类别,您可以在子查询中添加LIMIT 1
,或使用像他在他的提到的Stefan H.中的INSERT INTO .. SELECT
语句回答:
INSERT INTO sub_cat (subCat_id, Cat_id, `name`) (
SELECT NULL, id, 'History' FROM category WHERE name = 'About Us'
)
答案 1 :(得分:0)
INSERT INTO SELECT是您想要的查询
INSERT into
sub_cat
SELECT
NULL AS subCat_id,
Cat_id,
'name' as History
FROM
Category
Where
YourColumn like 'About Us'