Mysql 使用两个SELECT-FROM语法插入到问题中
我有一个名为ps_manufacturer_lang的表,其中有4列名为id_manufacturer和id_lang,以及description和short_description id_manufacturer应为ps_manufacturer中选择的id_manufacturer中的值 id_lang应该是1 说明应为prestashop_old.ps_category_lang中的选择说明值,其中id_lang='1'和id_category位于 从prestashop_old.ps_category中选择id_category,其中id_parent='241' 简短描述应为空 这是我的密码:Mysql 使用两个SELECT-FROM语法插入到问题中,mysql,sql,database,Mysql,Sql,Database,我有一个名为ps_manufacturer_lang的表,其中有4列名为id_manufacturer和id_lang,以及description和short_description id_manufacturer应为ps_manufacturer中选择的id_manufacturer中的值 id_lang应该是1 说明应为prestashop_old.ps_category_lang中的选择说明值,其中id_lang='1'和id_category位于 从prestashop_old.ps_c
INSERT INTO ps_manufacturer_lang (id_manufacturer, id_lang, description, short_description)
SELECT
id_manufacturer
FROM ps_manufacturer
1,
SELECT
description
FROM prestashop_old.ps_category_lang
WHERE
id_lang='1'
AND id_category IN (
SELECT id_category FROM prestashop_old.ps_category WHERE id_parent='241'
)
NULL
错误:
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1,
SELECT
description
FROM prestashop_old.ps_category_lang
WHERE
' at line 5
似乎不可能在一个INSERT-in中使用两个SELECT-FROM语法
有什么帮助吗
谢谢,嗯。我怀疑你想要这样的逻辑
INSERT INTO ps_manufacturer_lang (id_manufacturer, id_lang, description, short_description)
SELECT m.id_manufacturer, 1, cl.description, NULL
FROM ps_manufacturer m join
prestashop_old.ps_category_lang cl
ON cl.id_lang = 1 and
cl.id_category IN (
SELECT id_category
FROM prestashop_old.ps_category
WHERE id_parent = 241
);
首先测试select以查看它是否返回您想要的内容。id\u制造商与描述和简短描述之间的关系如何?在您的问题中,数据似乎没有以任何方式链接。所有表都在同一个数据库中,除非注明。@NimaMasalegooha。这是使用查询中的逻辑得到的。我只想从两个表中的四个不同列填充一个表中的四列。