Oye, tengo un problema con una consulta SQL. Vamos a tomar este ejemplo, los datosSQL: utilizando GROUP BY y MAX en varias columnas
itemID catID attrib1 attrib2
1 1 10 5
2 1 10 7
3 1 5 10
4 2 18 15
quiero devolver el mejor elemento para cada categoría (con attrib1 tener prioridad sobre attrib2)
Obviamente, "SELECT catID, MAX (attrib1), MAX (attrib2) DE test_table GROUP BY catID "no funciona, ya que devolverá 10 & 10 para el 1er gato.
Entonces, ¿hay alguna manera de decirle a MySQL que seleccione el valor máximo de la fila attrib2 pero solo considere aquellos en los que attrib1 también es el valor máximo? es decir, devolver los datos siguientes
catID attrib1 attrib2
1 10 7
2 18 15
Gracias por todas las respuestas rápidas chicos. También es bueno ver diferentes formas de hacerlo. – Charles
¿Funciona? los 3 valores que regresan deben ser los de filas diferentes. – Ryo