我在WooCommerce中有5000多种产品,我正在寻找一个SQL查询以根据其SKU设置其条形码。 “条形码”和“ sku”都是自定义帖子元。基本上是这样的:
UPDATE wp_postmeta SET barcode='x' WHERE sku='y';
但是它不起作用,因为条形码和sku不是真实的表列。那么,有人可以提供有效的查询吗?我是SQL的新手。谢谢!
答案 0 :(得分:1)
sku和条形码将存储在两个由post_id链接的独立行中。这是在MySQL(borrowed from this answer)的同一张表中基于另一行更新的语法:
UPDATE wp_postmeta a
JOIN wp_postmeta b on b.post_id = a.post_id
SET a.meta_value = 'y'
WHERE a.meta_key = 'barcode'
AND b.meta_key = 'sku'
AND b.meta_value = 'x';
即查询表别名b上的ID,然后更新表别名a上的条形码。
(但是我没有安装WooCommerce进行测试-请先备份您的数据库!等)