目前我们有一张表'新闻'以下相关领域:
现在是一个系统范围的表格'类别'介绍了以下相关领域:
类别' Top' (用于' topnews'的通用类别)插入了' id' ' 4',您可能会在下面的查询中看到。
相关的映射表' category_mm'包含以下字段:
现在我必须在映射表中为所有'新闻'创建条目。有' is_topnews'设置为' 1'。我尝试了以下查询,但没有成功,错误消息说我的语法附近有一个错误' FROM [...]':
INSERT INTO category_mm
SET category_mm.source_table = 'news',
category_mm.source_id = news.id,
category_mm.category_id = 4 FROM news
WHERE news.is_topnews = 1;
这可以用普通(My-)SQL以某种方式完成吗?
答案 0 :(得分:1)
尝试这种方式:
INSERT INTO category_mm (source_table, source_id, category_id)
VALUES (SELECT 'news', news.id, 4 FROM news WHERE news.is_topnews = 1);
答案 1 :(得分:1)
请试试这个:
INSERT INTO category_mm (source_table, source_id, category_id)
(SELECT 'news', news.id, 4 FROM news WHERE news.is_topnews = 1)