【问题标题】:MySQL: Return list of values in one table conditional on another tableMySQL:以另一个表为条件返回一个表中的值列表
【发布时间】:2018-04-11 05:02:31
【问题描述】:

我需要创建一个活跃(付费)会员的学生 ID 号视图。

学生人数存储在名为usermeta 的表中,如下所示:

user_id          meta_key          meta_value
---------------------------------------------
      1         studentid                1234  

此人是否是会员存储在posts 表中(Woocommerce/Wordpress 设置...):

post_author         post_status
-------------------------------
          1          wcm_active

user_idpost_author 是标识每个成员/用户的唯一 ID。

我知道我可以像这样返回一个 ID 号列表:

SELECT meta_value FROM usermeta WHERE meta_key = "studentid"

我只是不知道如何让它以 if post_status = wcm-active 为条件

如果有人提出意见,将不胜感激。

【问题讨论】:

  • 可以在 user_id 和 post_author 之间进行连接,得到所有状态为 wcm_active 的学生 id。

标签: mysql sql wordpress woocommerce


【解决方案1】:

您正在寻找INEXISTS

SELECT meta_value 
FROM usermeta 
WHERE meta_key = 'studentid'
AND user_id IN (SELECT post_author FROM posts WHERE post_status = 'wcm_active')

【讨论】:

  • 啊哈!我其实也有类似的东西,但是我不确定如何正确格式化AND,当然它就是这么简单......非常感谢
猜你喜欢
  • 2021-04-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-11-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-15
相关资源
最近更新 更多