从另一个表中获取没有记录的记录

塞尔希·费多尔丘克

我想得到用户不喜欢的自行车。所以如果用户不喜欢一辆自行车,它就永远不会再显示那辆自行车。

自行车有很多不喜欢的,属于用户。用户有很多不喜欢和自行车。不喜欢属于用户和自行车。

这是我在 BicyclesController 的索引操作中的代码:

@bicycles = Bicycle.includes(:dislikes).where.not("dislikes.author_id = #{current_user.id}")

所以我收到这个错误:

PG::UndefinedTable: ERROR:  missing FROM-clause entry for table "dislikes"
LINE 1: ...cles" WHERE "bicycles"."published" = $1 AND (NOT (dislikes.a...
                                                             ^
: SELECT  "bicycles".* FROM "bicycles" WHERE "bicycles"."published" = $1 AND (NOT (dislikes.author_id = 1)) LIMIT $2 OFFSET $3

更新

此查询为我提供了用户不喜欢的记录:

@bicycles = Bicycle.includes(:dislikes).where(dislikes: {author_id: current_user.id})

但现在我想从所有记录中排除这些记录。有没有一种有效的方法来做到这一点?

塞尔希·费多尔丘克

最后我得到了需要的结果:

user_dislikes = current_user.dislikes.map(&:bicycle_id)
@bicycles = Bicycles.where('id NOT in (?)', user_dislikes)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

将记录添加到从另一个表获取数据的字段中

来自分类Dev

使用JPA从另一个表获取记录

来自分类Dev

如果另一个表中没有记录,则插入到一个表中

来自分类Dev

从一个表中查找在另一个表的关联记录中没有特定字段值的记录的记录

来自分类Dev

SQLite:从另一个表中指定的表中删除所有记录

来自分类Dev

根据一个键消除所有重复项,并保留一个表中没有在另一个表中的记录

来自分类Dev

只检索没有与另一个表关联的记录的记录

来自分类Dev

从一个表中选择记录,而另一个表中没有两列

来自分类Dev

通过外键在Entity Framework 6中的另一个表中获取记录

来自分类Dev

在oracle中查询以从一个表中获取多个记录并输入另一个表

来自分类Dev

从另一个表获取每个记录的总数

来自分类Dev

如何从一个表中选择另一个表中没有外键的记录

来自分类Dev

使用数据透视表从另一个表获取所有记录

来自分类Dev

从另一个表更新表中的记录

来自分类Dev

更新具有另一个表ID的表中的记录

来自分类Dev

获取具有特定属性值并在另一个表中具有ID的记录

来自分类Dev

需要从一个表中获取记录,而另一个表中没有该记录

来自分类Dev

使用JPA从另一个表获取记录

来自分类Dev

如果另一个表中没有记录,则插入到一个表中

来自分类Dev

SQLite:从另一个表中指定的表中删除所有记录

来自分类Dev

查找不在另一个表中的记录

来自分类Dev

连接两个表,向我显示一个表中的记录,而另一个表中没有对应的值

来自分类Dev

从一个表中选择所有记录并从另一个表中匹配记录

来自分类Dev

如何从另一个表中的列日期之间获取一个表中的所有记录

来自分类Dev

如何在winforms中通过c#从一个表中获取所有记录并将其保存在另一个表中?

来自分类Dev

如何更新另一个表中的记录

来自分类Dev

在另一个表中查找丢失的记录

来自分类Dev

如何在查询中从另一个表中获取记录?

来自分类Dev

对于没有与另一个表的连接记录的记录,如何获得连接结果?

Related 相关文章

  1. 1

    将记录添加到从另一个表获取数据的字段中

  2. 2

    使用JPA从另一个表获取记录

  3. 3

    如果另一个表中没有记录,则插入到一个表中

  4. 4

    从一个表中查找在另一个表的关联记录中没有特定字段值的记录的记录

  5. 5

    SQLite:从另一个表中指定的表中删除所有记录

  6. 6

    根据一个键消除所有重复项,并保留一个表中没有在另一个表中的记录

  7. 7

    只检索没有与另一个表关联的记录的记录

  8. 8

    从一个表中选择记录,而另一个表中没有两列

  9. 9

    通过外键在Entity Framework 6中的另一个表中获取记录

  10. 10

    在oracle中查询以从一个表中获取多个记录并输入另一个表

  11. 11

    从另一个表获取每个记录的总数

  12. 12

    如何从一个表中选择另一个表中没有外键的记录

  13. 13

    使用数据透视表从另一个表获取所有记录

  14. 14

    从另一个表更新表中的记录

  15. 15

    更新具有另一个表ID的表中的记录

  16. 16

    获取具有特定属性值并在另一个表中具有ID的记录

  17. 17

    需要从一个表中获取记录,而另一个表中没有该记录

  18. 18

    使用JPA从另一个表获取记录

  19. 19

    如果另一个表中没有记录,则插入到一个表中

  20. 20

    SQLite:从另一个表中指定的表中删除所有记录

  21. 21

    查找不在另一个表中的记录

  22. 22

    连接两个表,向我显示一个表中的记录,而另一个表中没有对应的值

  23. 23

    从一个表中选择所有记录并从另一个表中匹配记录

  24. 24

    如何从另一个表中的列日期之间获取一个表中的所有记录

  25. 25

    如何在winforms中通过c#从一个表中获取所有记录并将其保存在另一个表中?

  26. 26

    如何更新另一个表中的记录

  27. 27

    在另一个表中查找丢失的记录

  28. 28

    如何在查询中从另一个表中获取记录?

  29. 29

    对于没有与另一个表的连接记录的记录,如何获得连接结果?

热门标签

归档