【问题标题】:Using two WHERE statements for different tables对不同的表使用两个 WHERE 语句
【发布时间】:2023-03-31 19:53:01
【问题描述】:

我已经建立了一个关注系统,但该系统显示所有甚至暂时停用的成员,以禁止停用的成员显示在关注者或关注等区域中,我在成员表中添加了一个“关闭”列,该列最初设置为no 并且当成员想要暂时停用他的个人资料时,此否将更新为是。现在我的想法是加入select 语句,该语句从follow 表中选择关注或关注的成员,其中members 表中closed 列设置为no 的成员,因此我的系统仅显示激活的成员。

我的选择语句是:

SELECT * FROM follow WHERE uid=:memberid

我试过了,但出现语法错误:

SELECT * FROM follow INNER JOIN members on members.memberid=follow.uid WHERE uid=:memberidid WHERE closed=no

【问题讨论】:

  • 您不需要多个 WHERE。只需使用“和”运算符。

标签: php sql pdo twitter-follow


【解决方案1】:

您可以使用AND 作为“第二个”WHERE 子句,而不是使用两次WHERE

SELECT * FROM `follow` INNER JOIN `members` ON `members`.`memberid` = `follow`.`uid` WHERE `uid` = :memberidid AND `closed` = "no"

【讨论】:

    【解决方案2】:
    SELECT * FROM 
    follow INNER JOIN members 
    on members.memberid=follow.uid 
    WHERE follow.uid=follow.memberid 
    AND members.closed='no'
    

    【讨论】:

      猜你喜欢
      • 2013-10-03
      • 1970-01-01
      • 2018-01-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-14
      • 1970-01-01
      相关资源
      最近更新 更多