我有两个供应商提供的2.1万件产品wp\u posts.post\u作者值“5”和“6”
一些产品由他们两人共同销售(大约2公里)。
我想从post_author(供应商)“5”中隐藏副本的目录可见性
我做了这个sql查询来找出重复的
SELECT
pm.post_id,
pm.meta_value,
pm.meta_key,
p.post_title,
p.post_author,
p.id, p.post_type, COUNT(*)
FROM wp_postmeta pm
JOIN wp_posts p
ON p.id = pm.post_id
WHERE p.post_type = 'product'
AND pm.meta_key = 'icecat_sku'
AND pm.meta_value != ''
GROUP BY meta_value
HAVING COUNT(*) > 1
第一个查询的输出
这工作得很好,但它只显示后作者(供应商)“6”的副本。
所以我试着 SELECT
所有来自post_作者'5'的产品,以查看查询是否没有问题
SELECT
pm.post_id,
pm.meta_value,
pm.meta_key,
p.post_date,
p.post_title,
p.post_author,
p.id, p.post_type
FROM wp_posts p
JOIN wp_postmeta pm
ON pm.post_id = p.id
WHERE p.post_type = 'product'
AND pm.meta_key = 'icecat_sku'
AND pm.meta_value != ''
AND p.post_author = '5'
第二个查询的输出-它做得很好。
所以主要的问题是当我加上: GROUP BY meta_value HAVING COUNT(*) > 1
-从(供应商)post\u author'5'获取副本的查询有问题:
SELECT
pm.post_id,
pm.meta_value,
pm.meta_key,
p.post_date,
p.post_title,
p.post_author,
p.id, p.post_type, COUNT(*)
FROM wp_posts p
JOIN wp_postmeta pm
ON pm.post_id = p.id
WHERE p.post_type = 'product'
AND pm.meta_key = 'icecat_sku'
AND pm.meta_value != ''
AND p.post_author = '5'
GROUP BY meta_value
HAVING COUNT(*) > 1
第三个查询的输出
它只返回16个产品而不是2k个产品。。。
我相信我错了,或者错过了什么 GROUP BY meta_value HAVING COUNT(*) > 1
你能告诉我,如果我的查询有一些问题,可能导致的问题?已经花了几天的时间来修复这个。。。谢谢您
暂无答案!
目前还没有任何答案,快来回答吧!