如何进行此查询以获取记录?

时间:2014-06-15 10:54:33

标签: ruby sinatra

我想从表格中获取记录"博客"这是在过去一周的历史中写的,并且是最高的观看数字。

我做了这个查询:

@most_viewed = DB[:blogs].where(:date <(Time.now - 7), :views > 900).reverse_order(:id).limit(0..9).sort(:views)

1 个答案:

答案 0 :(得分:0)

取自documentation of Sequel

@most_viewed = DB[:blogs].where{ date <(Time.now - 7) }.where { views > 900 }.order(Sequel.desc(:id)).limit(10)

或者

@most_viewed = DB[:blogs].where{ date <(Time.now - 7) }.where { views > 900 }.order(:views).limit(10)

取决于您是想按id还是按views订购(在您的代码中,您似乎想要同时执行这两项操作...)