gpt4 book ai didi

mysql - 连接表属性的 Activerecord OR 条件

转载 作者:行者123 更新时间:2023-11-29 04:21:40 28 4
gpt4 key购买 nike

我想写一个查询返回

  • 所有 user_id = self.id 的任务或者
  • 关联行程的 booker_id = self.id 的所有任务

    Task.joins(:trip).where('user_id = ? OR trip.booker_id = ?', self.id, self.id)

上面返回错误

  PG::AmbiguousColumn: ERROR:  column reference "user_id" is ambiguous

任何帮助/解释将不胜感激

最佳答案

你的 trips 表中有 user_id 列,所以当你写 user_id = ... 时 PG 不知道你的意思.您需要指定表名,如下所示:

Task.joins(:trip).where('tasks.user_id = :id OR trip.booker_id = :id', id: self.id)

关于mysql - 连接表属性的 Activerecord OR 条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21937539/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com