mysql - 查询以获取按字段值分组的所有行以及另一个字段的条件
问题描述
我有以下查询:
SELECT
a.id_posicion,
a.profesional,
MAX( a.fecha_hora ) AS fechaPosicion,
a.latitud,
a.longitud,
b.tipo_profesional,
b.nombre,
b.apellidos,
c.tipo_profesional as tipoProfesional,
b.profile_image,
b.tel as tel,
e.especialidad as especialidad_profesional,
b.ciudad as ciudad,
b.departamento as departamento,
b.id_firebase as id_firebase
FROM tb_ultima_posicion_pro a
INNER JOIN users b ON b.id = a.profesional
INNER JOIN tb_profesionales c ON c.id_profesionales = b.tipo_profesional
INNER JOIN tb_especialidades_profesional d ON d.profesional = b.id
INNER JOIN tb_especialidades e ON d.especialidad = e.id_especialidad
GROUP BY a.profesional
ORDER BY fechaPosicion DESC
我需要的是从表 tb_ultima_posicion_pro 中获取所有记录,按字段分组profesional
,这意味着我只为每个专业人士获得一行(没关系),对于每个专业人士,我需要获得最新字段的 te 行fecha_hora
,这是一个日期时间字段。
我从这个查询中得到的是每个专业(好的)的一行,但不是具有最新fecha_hora
字段值的行。
解决方案
或者,您可以首先通过对表 tb_ultima_posicion_pro 进行分组来获取最大 fetch_hora,然后可以加入其他表 -
SELECT a.id_posicion
,a.profesional
,am.fecha_hora AS fechaPosicion
,a.latitud
,a.longitud
,b.tipo_profesional
,b.nombre
,b.apellidos
,c.tipo_profesional as tipoProfesional
,b.profile_image
,b.tel as tel
,e.especialidad as especialidad_profesional
,b.ciudad as ciudad
,b.departamento as departamento
,b.id_firebase as id_firebase
FROM tb_ultima_posicion_pro a
INNER JOIN (SELECT profesional
,MAX(fecha_hora) AS fecha_hora
FROM tb_ultima_posicion_pro
GROUP BY profesional) am ON a.profesional = am.profesional
AND a.fecha_hora = am.fecha_hora
INNER JOIN users b ON b.id = a.profesional
INNER JOIN tb_profesionales c ON c.id_profesionales = b.tipo_profesional
INNER JOIN tb_especialidades_profesional d ON d.profesional = b.id
INNER JOIN tb_especialidades e ON d.especialidad = e.id_especialidad
ORDER BY fechaPosicion DESC
推荐阅读
- reactjs - 当我创建一个反应应用程序时纱线错误代码1
- ios - 为图表生成颜色渐变
- c++ - 在 Google colaboratory for c++ 中安装 OpenCV 需要太多时间
- java - 错误:“无法解析 'JSONParser' 中的方法 'makeHttpRequest'”
- node.js - 尝试安装“npm quick.db”时出现错误
- c - 如果开始时没有询问,程序会跳过 scanf("%c", operator)
- c# - 动态更新构建资源
- python - 子进程:调用具有两个输入重定向的程序
- node.js - 我的 React fetch 调用使服务器负担过重。如何解决这个问题?
- asp.net-mvc - Kendo 子网格在 MVC 中调用 jquery 函数行模板,它在 jquery 中工作,但在 MVC 网格中如何工作