php - order_by() 对于距离范围数据无法正常工作

标签 php mysql codeigniter

我有范围内的距离数据,例如

5-10、0-5、10-15、

我正在使用此查询来按排序顺序获取数据:

$this->db->select("distance_from_mall");
$this->db->from("transport_charges");
$this->db->order_by("distance_from_mall", "asc");
$route =$this->db->get()->result_array();

它给了我

0-5 , 10-15,5-10 而不是 0-5 ,5-10, 10-15,

最佳答案

因为您的距离是一个字符串,引擎ORDER将其作为字符串。

这是此查询的正确响应。

我建议将每个transport_charge距离更改为最小整数/数字。如果范围不符合,这将为您提供所需的所有数据重叠。

如果他们这样做了;将distance存储为两列,range_maxrange_min,以及ORDER BY(以更有意义的为准)或将两列分开:按 range_min、range_max 排序

关于php - order_by() 对于距离范围数据无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25162769/

相关文章:

php - 使用 php shell_exec() 执行命令行以启动服务器上的摄像头

php - 将mysql中的所有表数据打印到html表中

mysql - 如何在mysql数据库中存储音频文件

c# - 列表框可以显示为表格吗

php - 如何在 codeigniter 中单击按钮后删除一些 session 数组段

php - 如何使用 php 提取数据(字符串)?

php - 链接查询 - 无法获得和/或工作

php - 安装PHP,MySQL和Apache2后,在Ubuntu的哪里可以找到DocumentRoot?

php - Codeigniter 将页面相互链接

php - 如何仅获取特定日期而非日期范围的 Google 日历事件