【发布时间】:2015-09-01 11:28:36
【问题描述】:
我正在尝试通过 JOIN 从我的 Wordpress 数据库中使用 SQL 获取数据,但我无法正常工作。
我需要什么:
- 存在 meta_key "gtp_product_dont_show" 且 meta_value 不为 "true" 的帖子。
- 以及元密钥“gtp_product_dont_show”不存在的帖子。
我的问题:
我现在只得到帖子有元密钥“gtp_product_dont_show”的结果,但也有帖子没有这个密钥,我也需要这些。
这就是我现在拥有的:
SELECT
ID, post_title
FROM
wp_posts p
JOIN wp_postmeta m ON
p.ID = m.post_id AND
m.meta_key = 'gtp_product_dont_show' AND
m.meta_value != 'true'
WHERE
post_type = 'products' AND
post_status = 'publish'
输出:
【问题讨论】:
-
请提供示例输入和输出
-
然后从查询中删除 meta_key 内容。你告诉数据库只返回具有该值的记录。如果你想要没有的记录,那么你不能要求它在那里。 “你一定穿着绿色 T 恤,但不能穿绿色 - 嘿!为什么我没有得到任何绿色?”
-
@MarcB 我不认为它可以被删除。考虑
m.meta_key = 'gtp_product_dont_show' and m.meta_value = 'true'的情况,我相信OP试图排除它。 -
但是,我确实认为这个问题通过样本数据和预期结果会更清楚,我同意 Onur。
标签: php mysql sql-server wordpress join