Ruby 是否可以在Sequel中按未选择的列排序?
给定一个包含列Ruby 是否可以在Sequel中按未选择的列排序?,ruby,sequel,Ruby,Sequel,给定一个包含列c1、c2和cx的表t,我的表单查询失败(版本3.27.0): DB[:t].order(:cx).select{[:c1, :c2]} 我不需要输出中的cx中的值,我只希望它们用于排序 等效的SQL是: SELECT c1, c2 FROM t ORDER BY cx; 我目前的解决办法是,即使我不需要,也只要求使用cx: DB[:t].order(:cx).select{[:c1, :c2, :cx]} 有人能确认这是Sequel中的已知行为/错误吗?Sequel为该代码
c1
、c2
和cx
的表t
,我的表单查询失败(版本3.27.0):
DB[:t].order(:cx).select{[:c1, :c2]}
我不需要输出中的cx
中的值,我只希望它们用于排序
等效的SQL是:
SELECT c1, c2 FROM t ORDER BY cx;
我目前的解决办法是,即使我不需要,也只要求使用cx
:
DB[:t].order(:cx).select{[:c1, :c2, :cx]}
有人能确认这是Sequel中的已知行为/错误吗?Sequel为该代码生成的SQL是:
通过cx从t顺序中选择c1、c2
。如果失败,很可能是您的数据库出现了问题(如果要调试,您需要发布您得到的回溯)
FWIW,我将使用以下续集代码:DB[:t]。顺序(:cx)。选择(:c1,:c2)
。如果不使用虚拟行块提供的功能,则没有理由使用虚拟行块