我正在编写一个 SQL 查询来显示以下内容:
在
_go_product_url
中具有 meta_key
且不为空的结果。
我需要它只在基于第一个没有 meta_key 的查询的结果中显示我
_go_product_info
在服务器上不花费大量资源的最佳方法是什么?
我正在使用 Wordpress。但是现在在 phpmyadmin 中测试
我运行了这个查询但没有结果
SELECT *
FROM `wp_postmeta`
WHERE `meta_key` LIKE '%_go_product_url%'
AND `meta_value` IS NOT NULL
AND NOT EXISTS (SELECT * FROM `wp_postmeta`
WHERE `meta_key` LIKE '%_go_product_info%' IS NULL);
您可能想要确定符合这些标准的帖子,因此您应该选择像
post_id
和/或您想要的其他列。这是一种聚合方法:
SELECT post_id
FROM wp_postmeta
GROUP BY post_id
HAVING SUM(meta_key LIKE '%_go_product_url%') > 0 AND
SUM(meta_key LIKE '%_go_product_info%') = 0;