sacar el valor maximo de un campo
Publicado por toni (3 intervenciones) el 28/03/2017 19:53:01
hola a todos necesito sacar unicamente el nombre del cliente que mas a gastado y el gasto.....
la BD en cuestion es esta decir que estoy usando como motor MYSQL bajo linux
+----------------------+
| Tables_in_cptaller1 |
+----------------------+
| clientes |
| crea |
| detalle_fact_cliente |
| facturas_clientes |
| hoja_parte |
| mecanico |
| repuesto |
| usan |
| vehiculo |
+----------------------+
cliente
id_cliente | nom_cliente | apells_cliente | dni_cliente | telf_cliente |
siendo id_cliente la PK
vehiculo
+-------------+-----------------+------------+---------+-----------+---------+
| id_vehiculo | id_cliente_vehi | marca | modelo | matricula | color |
+-------------+-----------------+------------+---------+-----------+---------+
siendo id_vehiculo PK y id_cliente_vehi la FK
detalle_fact_cliente
+-------------+-----------------+------------+---------+-----------+---------+
| id_vehiculo | id_cliente_vehi | marca | modelo | matricula | color |
+-------------+-----------------+------------+---------+-----------+---------+
sendo id_vehiculo la PK y id_cliente_vehi la FK
la consulta que estoy haciendo es esta (INCLUSO HE PROVADO CON LA CLÁUSULA HAVING PARA FILTRAR EL RESULTADO Y NO ME FUNCIONA:)
mysql> select max(d.precio), c.nom_cliente from clientes c, vehiculo v, detalle_fact_cliente d
-> where c.id_cliente = v.id_cliente_vehi and v.id_vehiculo = d.id_vehiculo_fact
-> group by c.nom_cliente
-> ;
+---------------+-------------+
| max(d.precio) | nom_cliente |
+---------------+-------------+
| 200 | adrian |
| 220.35 | antonio |
| 300.25 | cesar |
| 55.35 | javier |
| 50.3 | jose |
+---------------+-------------+
5 rows in set (0,00 sec)
como veis me salen desordenada e incluso no me filtra el cliente que mas ha gastado ...
saludos y gracias por las respuestas
la BD en cuestion es esta decir que estoy usando como motor MYSQL bajo linux
+----------------------+
| Tables_in_cptaller1 |
+----------------------+
| clientes |
| crea |
| detalle_fact_cliente |
| facturas_clientes |
| hoja_parte |
| mecanico |
| repuesto |
| usan |
| vehiculo |
+----------------------+
cliente
id_cliente | nom_cliente | apells_cliente | dni_cliente | telf_cliente |
siendo id_cliente la PK
vehiculo
+-------------+-----------------+------------+---------+-----------+---------+
| id_vehiculo | id_cliente_vehi | marca | modelo | matricula | color |
+-------------+-----------------+------------+---------+-----------+---------+
siendo id_vehiculo PK y id_cliente_vehi la FK
detalle_fact_cliente
+-------------+-----------------+------------+---------+-----------+---------+
| id_vehiculo | id_cliente_vehi | marca | modelo | matricula | color |
+-------------+-----------------+------------+---------+-----------+---------+
sendo id_vehiculo la PK y id_cliente_vehi la FK
la consulta que estoy haciendo es esta (INCLUSO HE PROVADO CON LA CLÁUSULA HAVING PARA FILTRAR EL RESULTADO Y NO ME FUNCIONA:)
mysql> select max(d.precio), c.nom_cliente from clientes c, vehiculo v, detalle_fact_cliente d
-> where c.id_cliente = v.id_cliente_vehi and v.id_vehiculo = d.id_vehiculo_fact
-> group by c.nom_cliente
-> ;
+---------------+-------------+
| max(d.precio) | nom_cliente |
+---------------+-------------+
| 200 | adrian |
| 220.35 | antonio |
| 300.25 | cesar |
| 55.35 | javier |
| 50.3 | jose |
+---------------+-------------+
5 rows in set (0,00 sec)
como veis me salen desordenada e incluso no me filtra el cliente que mas ha gastado ...
saludos y gracias por las respuestas
Valora esta pregunta
0