【发布时间】:2014-12-10 13:53:00
【问题描述】:
我正在尝试从需要执行 3 个条件的 wp_posts 表中选择 ID。
ID 是否与 wp_postmeta 表中的 post_id 匹配,其中 meta_key = ' gtp_analytics_client_id' 并且 meta_value 不为空。
ID 是否与 wp_postmeta 表中的 post_id 匹配,其中 meta_key = ' gtp_conversion_uploaded' 并且 meta_value 不等于 1。
- ID 是否与 wp_postmeta 表中的 post_id 匹配,其中 meta_key = 'gtp_lead_revenue' 和meta_value 不为空。
我是 SQL 的初学者。这就是我现在拥有的,但我不能使用多个 IN。所以我想我需要换一种方式。
SELECT ID
FROM wp_posts
WHERE ID IN (SELECT post_id
FROM wp_postmeta
WHERE meta_key = 'gtp_analytics_client_id' AND meta_value != '')
AND IN (SELECT post_id
FROM wp_postmeta
WHERE meta_key = 'gtp_conversion_uploaded' AND meta_value != 1)
AND IN (SELECT post_id
FROM wp_postmeta
WHERE meta_key = 'gtp_revenue' AND meta_value != '')
我收到以下错误:
您的 SQL 语法有误;检查与您的 MySQL 服务器版本相对应的手册,以在第 4 行的 'IN (SELECT post_id FROM wp_postmeta WHERE meta_key = 'gtp_conversion_uploaded' A' 附近使用正确的语法
【问题讨论】:
-
上面的代码有没有报错?
-
@Matt 是的。我已将错误添加到我的问题中。
-
试试我的答案,应该可行
标签: mysql sql database wordpress phpmyadmin