如何在活动记录 POSTGRES 中使用 BETWEEN 搜索字符串数组


Subscriptions
    canceled_at: ["2017-04-07T09:52:17-05:00", "2017-04-01T09:52:17-05:00"]

Canceled_at是一个字符串数组。每个元素都是转换为字符串的日期时间。

以上是我的订阅表。我正在尝试查询并查找在给定一周内具有canceled_at日期的记录。

date = Date.today
Subscription.where("ANY subscriptions.canceled_at 
    BETWEEN '#{date.beginning_of_week(:sunday)}' 
    AND '#{date.end_of_week(:sunday)}'"

红宝石 2.3.1p112

Subscription.where(canceled_at:(date.beginning_of_week(:sunday)..date.end_of_week(:sunday)))

编辑:缺少右括号

最新更新