用于按类别名称获取 WooCommerce 产品的 MySQL 查询 [英] MySQL query for getting WooCommerce products by category name
本文介绍了用于按类别名称获取 WooCommerce 产品的 MySQL 查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我只想按特定类别更新产品.
I want to update products by specific category only.
我通过这个 MySQL 查询得到了正确的结果:
I am getting correct results by this MySQL query:
SELECT * FROM wp_posts
WHERE post_type = 'product'
现在,我有 2 种产品类别 1.ABC
和 2.XYZ
ABC
有 5 个产品,XYZ
有 30000 个产品.
Now, I have 2 types of product categories 1. ABC
and 2. XYZ
ABC
has 5 products and XYZ
has 30000 products.
我只想更新具有类别ABC
为此,我编写了 MySQL 查询:
For that I have written MySQL Query:
UPDATE `wp_postmeta`
SET `meta_value`= ( CASE WHEN `meta_key` = '_stock' THEN '0'
WHEN `meta_key` = '_stock_status' THEN 'outofstock'
ELSE `meta_value`
END)
WHERE post_id NOT IN( '2268', '2298', '2299', '2135' );
我不想使用 NOT IN
因为如果要添加任何类别,那么此查询将是错误的.
I do not want to use NOT IN
because if any category will be added, then this query will be wrong.
如何在此 MySQL 查询中检查产品类别?
How can I check for the product category in this MySQL query?
提前致谢.
推荐答案
子查询应该做的:
UPDATE `wp_postmeta`
SET `meta_value`= (
CASE
WHEN `meta_key` = '_stock' THEN '0'
WHEN `meta_key` = '_stock_status' THEN 'outofstock'
ELSE `meta_value`
end)
WHERE post_id NOT IN
(
SELECT id
from wp_posts
WHERE post_type = 'product' );
这篇关于用于按类别名称获取 WooCommerce 产品的 MySQL 查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文