gpt4 book ai didi

ruby-on-rails - sphinx 排序 : nil/NULL values last

转载 作者:行者123 更新时间:2023-12-04 06:18:45 25 4
gpt4 key购买 nike

在 Rails 项目中,我将 Sphinx 与 Thinking Sphinx 插件一起使用。我用一个属性 :foo 为一个 float 索引了一个表。

对列进行排序时我期望的行为:foo 是 nil 值始终出现在列表末尾,例如

id; foo (order foo desc)
-------
1; 5
2; 3
3; -4
4: -5
5: nil
6: nil


id; foo (order foo asc)
-------
4: -5
3; -4
2; 3
1; 5
5: nil
6: nil

如果是普通的sql,我会这样排序:

:order => "(foo IS NULL) ASC, foo DESC"

但这似乎不可能,因为我认为 NULL 值会被转换为 0(这是真的吗?)。使用 sphinx 排序表达式似乎无法正确对我的 float 进行排序。

有人解决了这个问题或者知道如何做吗?

最佳答案

您提供的解决方案就是我建议的 - 是的,您是对的,Sphinx 将 NULL 视为 0。

关于ruby-on-rails - sphinx 排序 : nil/NULL values last,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1023967/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com