gpt4 book ai didi

PHP/MYSQL 具有多个字段和字段选择的 Distinct 运算符

转载 作者:行者123 更新时间:2023-11-30 21:50:40 25 4
gpt4 key购买 nike

我有一个 MYSQL 表,如下所示:
+----+------------+------------+---------------- +--------------------+
|编号 | id_solicitud |身份状态 | id_responsable | fecha_hora |
+----+------------+------------+---------------- +--------------------+
| 1 | 1 | 1 | 3 | 2017-11-20 11:12:05 |
| 3 | 1 | 2 | 3 | 2017-11-20 13:30:50 |
| 4 | 2 | 1 | 5 | 2017-11-20 13:42:35 |
| 5 | 2 | 2 | 5 | 2017-11-20 13:52:25 |
| 6 | 1 | 4 | 2 | 2017-11-21 12:20:17 |
| 8 | 2 | 3 | 2 | 2017-11-21 13:39:57 |
| 9 | 2 | 2 | 5 | 2017-11-21 13:40:55 |
| 10 | 2 | 4 | 2 | 2017-11-21 13:45:24 |
+----+------------+------------+---------------- +--------------------+

然后,我继续使用以下 Mysql 查询按 id_solicitud 字段进行过滤:

SELECT id_estatus, id_responsable, fecha_hora FROM estatus_historico WHERE id_solicitud =2 ORDER BY fecha_hora

结果:
+------------+----------------+---------------- --+
|身份状态 | id_responsable | fecha_hora |
+------------+----------------+---------------- --+
| 1 | 5 | 2017-11-20 13:42:35 |
| 2 | 5 | 2017-11-20 13:52:25 |
| 3 | 2 | 2017-11-21 13:39:57 |
| 2 | 5 | 2017-11-21 13:40:55 |
| 4 | 2 | 2017-11-21 13:45:24 |
+------------+----------------+---------------- --+

我想在 id_estatus 列上应用不同的运算符,但在找到重复行时选择较旧的行,即我想要的结果是:
+------------+----------------+---------------- --+
|身份状态 | id_responsable | fecha_hora |
+------------+----------------+---------------- --+
| 1 | 5 | 2017-11-20 13:42:35 |
| 3 | 2 | 2017-11-21 13:39:57 |
| 2 | 5 | 2017-11-21 13:40:55 |
| 4 | 2 | 2017-11-21 13:45:24 |
+------------+----------------+---------------- --+

我试过:

SELECT id_estatus、id_responsable、fecha_hora FROM estatus_historico WHERE id_solicitud =2 GROUP BY id_estatus ORDER BY fecha_hora

但是结果是错误的:
+------------+----------------+---------------- --+
|身份状态 | id_responsable | fecha_hora |
+------------+----------------+---------------- --+
| 1 | 5 | 2017-11-20 13:42:35 |
| 2 | 5 | 2017-11-20 13:52:25 |
| 3 | 2 | 2017-11-21 13:39:57 |
| 4 | 2 | 2017-11-21 13:45:24 |
+------------+----------------+---------------- --+

任何帮助将不胜感激

更新:创建表和插入数据的文件 => estatus_historico.sql

最佳答案

试试这个

SELECT id_estatus、id_responsable、MAX(fecha_hora) FROM estatus_historico WHERE id_solicitud =2 GROUP BY id_estatus ORDER BY fecha_hora

enter image description here

关于PHP/MYSQL 具有多个字段和字段选择的 Distinct 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47426377/

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