我正在尝试使用Sphinx (PHP)排序,以显示价格的顺序,但当我这样做时,它将显示在GB1.75之前的GB10,所以我需要像在mySQL中一样使用ABS。
我已经尝试过了:
$s->SetSortMode (SPH_SORT_EXPR,"ABS(display_price) ASC“);
不过,它似乎不起作用。
有人能帮上忙吗?
发布于 2013-01-04 07:06:41
检查display_price属性是否在搜索索引中被视为小数
很可能你有
sql_attr_string = display_price
而不是
sql_attr_float = display_price
或
sql_attr_bigint = display_price
发布于 2012-12-31 23:48:08
SPH_SORT_EXPR始终是降序的。ASC/DESC仅用于扩展模式。
要“反转”它以成为acsending,可以将它构建到表达式中。
$s->SetSortMode (SPH_SORT_EXPR, "1000000-CEIL(ABS(display_price*100.0))" );https://stackoverflow.com/questions/14097046
复制相似问题