如何将排序依据和分组依据组合在一起?条件:按一列排序,按另一列排序

阿比吉特·昆巴尔

我在MySQL中按顺序和按组合有一个问题。以下是我的表结构。

+-------------+-----------+-----------+----------------------------+
| driver_id   | lat       | lng       | creation                   |
+-------------+-----------+-----------+----------------------------+
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-13 09:21:39.225873 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 12:30:09.608296 |
| TDRV-000021 | 18.659135 | 73.756445 | 2019-03-10 15:38:37.954508 |

当我使用以下SQL命令(按创建顺序排序)时,

select driver_id, lat, lng, creation from `tabReal Time Location` order by creation desc;

我得到以下结果,

+-------------+-----------+-----------+----------------------------+
| driver_id   | lat       | lng       | creation                   |
+-------------+-----------+-----------+----------------------------+
| TDRV-000021 | 20.659180 | 73.756480 | 2019-03-16 08:13:41.155528 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:44:06.206690 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:36:25.571260 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:35:55.115124 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:35:46.281953 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:35:00.986849 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:33:38.370099 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:32:57.589272 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:30:24.582391 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-15 19:29:23.809564 |

当我用来合并订单依据和分组依据时,

select driver_id, lat, lng, creation from `tabReal Time Location` group by driver_id order by creation desc;

+-------------+-----------+-----------+----------------------------+
| driver_id   | lat       | lng       | creation                   |
+-------------+-----------+-----------+----------------------------+
| TDRV-000027 | 18.659180 | 73.756480 | 2019-03-15 13:47:37.338828 |
| TDRV-000021 | 18.659180 | 73.756480 | 2019-03-13 09:21:39.225873 |
+-------------+-----------+-----------+----------------------------+

但是正如您在上述结果中看到的那样,我得到了错误的结果,我期望下面最新更新的 lat,lng列。

+-------------+-----------+-----------+----------------------------+
| driver_id   | lat       | lng       | creation                   |
+-------------+-----------+-----------+----------------------------+
| TDRV-000021 | 20.659180 | 73.756480 | 2019-03-16 08:13:41.155528 |
| TDRV-000027 | 20.659180 | 90.756480 | 2019-03-15 14:07:41.543089 |
+-------------+-----------+-----------+----------------------------+
可见

这是期待最新更新的消息的一种方法

select t.driver_id, lat, lng, order_id  from `tabReal Time Location` t INNER JOIN  (select max(creation) as latest_date,driver_id  FROM `tabReal Time Location` group by  driver_id)d ON t.creation= d.latest_date and d.driver_id = t.driver_id;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫如何在分组到另一列时按分组大小对分组依据进行排序

按多列排序,按另一列分组

Google表格:如何将一列网址和一列文字结合在一起?

基于组合在一起的多列对表中的行进行排序

如何按列和下一行排序并按另一列排序?

在Pandas Dataframe中按一列排序,然后按另一列分组?

按一列的值排序,使行按另一列的值分组

如何按一列排序,但如何根据非数字的另一列进行排序?

返回按一列排序并按另一列分组的 SQL 数据

如何按一列过滤,而按另一列排序?

按一列排序,然后按另一列排序

如何将多个列组合在一起并绘制条形图?

如何对 Dataframe 中的 2 列进行排序,一列按降序排序,另一列按对应于第一列的字母顺序排序

按变量分组,排序和打印另一列中的值

熊猫:将一列中的单词数按另一列的值排序

熊猫-按一列分组,按另一列排序,从第三列获取价值

SQL按列排序并同时按另一列分组

Excel-按列对行进行分组,然后按另一列进行排序

如何将列与R中的条件结合在一起?

按列排序,按另一列唯一排序

使用差异对列进行分组并在熊猫中按另一列对另一列进行排序

如何在行之间只有一列不同的情况下将行组合在一起

R分组依据| 计算按另一列分组的不同值

按一列对多个定界文件按字典顺序排序,对另一列按数字顺序排序

SQL按值对另一列进行排序

mysql按SUM(column)组排序,另一列

SQL CE:选择不同的,按另一列排序

按另一列重新排序因子

如何将列与 Pandas 中的虚拟变量组合在一起(一个输出)?