如果meta_key不存在或不存在,则SQL显示结果为1

时间:2014-12-15 10:37:35

标签: mysql sql wordpress metadata

使用以下SQL查询我检查(Wordress)帖子的元值是否不等于1.但我还想检查meta_key> gtp_conversion_uploaded'存在。如果它不存在,我仍然想选择ID

SELECT DISTINCT p.ID
FROM wp_posts p
LEFT JOIN wp_postmeta m2 ON m2.post_id = p.ID
AND m2.meta_key = 'gtp_conversion_uploaded'
AND m2.meta_value != 1

所以我的查询需要进行以下检查:

  • 选择meta_key> gtp_conversion_uploaded'的结果。不是 等于1。
  • 并且如果meta_key> gtp_conversion_uploaded'不存在。

我尝试使用LEFT JOIN,但问题是如果meta_key的meta_value> gtp_conversion_uploaded'等于1,我仍然得到结果。

1 个答案:

答案 0 :(得分:0)

SELECT DISTINCT p.ID
FROM wp_posts p
LEFT JOIN wp_postmeta m2 ON m2.post_id = p.ID 
                        AND m2.meta_key = 'gtp_conversion_uploaded'
WHERE m2.meta_key is null 
OR m2.meta_value != 1