como utilizar la funcion LAST() y FIRST() en MySQL
, 0 comentarios, 8414 lecturas
por: Mamel
Lo primero que hay que decir es que estas funciones ( LAST() y FIRST() ) presentes en SQL estandar no estan presentes en MySQL, pero podemos conseguir el mismo efecto con una pequeña trampa:
-
SELECT
-
id,
-
MIN(valor) AS minimo,
-
MAX(valor) AS maximo,
-
AVG(valor) AS media,
-
SUBSTRING_INDEX(GROUP_CONCAT(valor ORDER BY fecha), ',', 1 )
AS primer_valor, -
SUBSTRING_INDEX(GROUP_CONCAT(valor ORDER BY fecha DESC), ',', 1 )
AS ultimo_valor -
FROM datos
-
GROUP BY agrupacion;
Esta funcion es util cuando queremos sacar los distintos valores de una tabla de historicos por ejemplo, como esta:
| id | producto_id | precio | fecha |
|---|---|---|---|
| 1 | 23 | 50.00 | 2014-02-15 |
| 1 | 23 | 53.00 | 2014-02-18 |
| 1 | 23 | 60.00 | 2014-02-20 |
| 1 | 23 | 48.00 | 2014-02-23 |
| 1 | 23 | 43.00 | 2014-02-25 |
| 1 | 23 | 51.00 | 2014-02-28 |
En esta tabla valor seria el campo precio y agrupacion seria producto_id
También te puede interesar
0 comentarios sobre "como utilizar la funcion LAST() y FIRST() en MySQL"
Sé el primero en comentar.