【问题标题】:Order by number in Postgres JSONB column在 Postgres JSONB 列中按数字排序
【发布时间】:2016-05-29 16:33:55
【问题描述】:

我在我的 JSONB 列中定义了一个 position 键。

值被视为文本,所以下面的查询

MyModel.order("data ->> 'position' ASC").each {|x| puts x.position}

返回:

0
1
10
2
3

如何将position 视为整数并以此为基础对模型进行排序?

【问题讨论】:

    标签: ruby-on-rails postgresql ruby-on-rails-5 jsonb


    【解决方案1】:

    纯属猜测,但也许:

    MyModel.order("(data ->> 'position')::Integer ASC").each {|x| puts x.position}
    

    【讨论】:

    • 猜测还不错:)
    猜你喜欢
    • 1970-01-01
    • 2023-03-16
    • 2019-11-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-08-18
    相关资源
    最近更新 更多