【问题标题】:Rails SQL INTERSECT not workingRails SQL INTERSECT 不工作
【发布时间】:2014-04-19 22:18:05
【问题描述】:

我想获得一个用户的共同朋友,即我关注的人,然后再关注我的人:

# get users I'm following
following_ids = "SELECT followed_id FROM relationships WHERE follower_id = #{self.id}"

# get user that are following me
follower_ids = "SELECT follower_id FROM relationships WHERE followed_id = #{self.id}"

User.where("id IN (#{following_ids} INTERSECT #{follower_ids})")

但是,我收到以下错误:

Mysql2::Error: 你的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本以获得正确的语法 在 'INTERSECT SELECT follower_id FROM 关系 WHERE 附近使用 follow_id = 2))' 在第 1 行:SELECT users.* FROM users WHERE (id IN (SELECT follow_id FROM 关系 WHERE follower_id = 2 INTERSECT SELECT follower_id FROM 关系 WHERE follow_id = 2))

个别查询确实有效,所以我知道这是 INTERSECT 关键字的问题。

【问题讨论】:

    标签: mysql sql ruby-on-rails


    【解决方案1】:

    MySQL 没有INTERSECT。请参阅hereherehere 了解更多信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-04-25
      • 2017-10-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      相关资源
      最近更新 更多