如何使用Sequel ORM以随机顺序从SQLite获取记录?

Arm*_*n H 4 ruby sqlite sequel

试图转换此SQLite查询

SELECT * FROM `terms` ORDER BY RANDOM() LIMIT 10
Run Code Online (Sandbox Code Playgroud)

使用Sequel模型.我得到的最接近的:

Term.order(rand{}).limit(10)
Term.order('random ()').limit(10)
Run Code Online (Sandbox Code Playgroud)

转化为

<Sequel::SQLite::Dataset: "SELECT * FROM `terms` ORDER BY 0.6160215951854449 LIMIT 10">
<Sequel::SQLite::Dataset: "SELECT * FROM `terms` ORDER BY 'random ()' LIMIT 10">
Run Code Online (Sandbox Code Playgroud)

但都不起作用.有没有办法将SQLite或其他特定于数据库的函数传递给Sequel order()

Arm*_*n H 10

使用Sequel.lit表达式:

Term.order(Sequel.lit('RANDOM()')).limit(10)
Run Code Online (Sandbox Code Playgroud)