我正在从现有的 mysql 数据库创建一个特定格式的表,以便我可以将其作为 csv 文件导出到我的 woocommerce 网站。
我可以为每个产品创建一行(没有变化的简单产品),但是我在使用可变产品时遇到问题(每个产品需要几行)。
下图显示了表中 3 个产品(3 个不同的 ParentSKU)的示例
我需要做的是为每个 ParentSKU 创建一个新行,其中包含每个变体的公共(public)信息。 即 14615 多出 1 行,14622 多出 1 行,14624 多出 1 行。
我有大约 1000 行需要像这样插入。
下面是我首先在表中插入行的方法:
$Query2 = "INSERT INTO Website ( `ParentSKU`,`SKU`,`Brand`,`ProductName`,`Images`)
SELECT ID,ID,Brand,Style,MainLink
FROM StockAccount,Stock_Items
WHERE StockAccount.ID=Stock_Items.ID_Product AND
Stock_Items.Name='' AND
Stock_Items.Returned='' AND
StockAccount.LAXS='Yes' AND
StockAccount.MainLink!=''
GROUP BY Size,MainLink
ORDER BY `ID`
";
我知道如何一次插入一行,但找不到有关我的特定问题的任何信息。
最佳答案
使用 SELECT DISTINCT
为每个 ParentSKU
获取单行,同时使用 ParentSKU
作为 SKU
在新行中。
INSERT INTO WebSite (ParentSKU, SKU, Brand, ProductName, Images)
SELECT DISTINCT ParentSKU, ParentSKU, Brand, ProductName, Images
FROM WebSite
关于PHP/Mysql 在现有表中插入多行以进行 csv 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41818232/