sql >> Base de Datos >  >> RDS >> Mysql

Selección del salario más alto

  SELECT name, wage, highhours
    FROM wagetable
   WHERE name like 'Brian' OR
         name like 'Default'
ORDER BY name,
         highhours desc

Esta consulta funciona cuando se consulta por Brian , pero para que funcione para cualquier nombre, Default debe almacenarse en su base de datos comenzando con un carácter especial [email protected] , porque los números y las letras son lo primero en la clasificación.

Otra forma sería que creara otra columna en la tabla, por el bien de nuestro argumento, llamada priority que debe tener el valor 0 para Default y 1 para cualquier otro usuario. Entonces simplemente podrías hacer:

  SELECT name, wage, highhours
    FROM wagetable
   WHERE name like 'Brian' OR
         name like 'Default'
ORDER BY priority desc,
         highhours desc

Por supuesto, es la misma solución, pero es un mejor enfoque que confiar en un carácter especial en el nombre de los valores predeterminados.