使用Hstore与Rails查询订购

时间:2014-05-04 04:39:27

标签: ruby-on-rails ruby-on-rails-3 postgresql ruby-on-rails-4

我有一个模特帖子

#<Post id: 121978, created_at: "2014-05-02 18:11:15", updated_at: "2014-05-02 18:11:15", data: {"hi"=>"1", "hello"=>"9999"}, review_id: nil> 

我想根据hstore数据类型列hello中的data对它们进行排序

我提出了这个问题:

Post.order("data -> 'hello'")

哪个有效,但由于Hstore是字符串,我有780, 78, 77, ...作为输出。

1 个答案:

答案 0 :(得分:4)

我认为您可以在按顺序处理之前将值转换为整数。我对Hstore并不熟悉,但这里有一些例子说明你可能会尝试这样做:

Post.order("CAST(data -> 'hello' AS INT)")
Post.order("CONVERT(INT, data -> 'hello')")
Post.order("(data -> 'hello') * 1")