comment faire pour récupérer le plus élevé et le plus bas salaire de la suite de la table?

J'ai employé le tableau

 EMP_ID | F_NAME    | L_NAME  | SALARY | JOINING_DATE                 | DEPARTMENT
-----------------------------------------------------------------------------------
 101    | John      | Abraham | 100000 | 01-JAN-14 09.15.00.000000 AM | Banking
 102    | Michel    | Clarke  | 800000 |                              | Insaurance
 102    | Roy       | Thomas  | 70000  | 01-FEB-13 12.30.00.000000 PM | Banking
 103    | Tom       | Jose    | 600000 | 03-FEB-14 01.30.00.000000 AM | Insaurance
 105    | Jerry     | Pinto   | 650000 | 01-FEB-13 12.00.00.000000 PM | Services
 106    | Philip    | Mathew  | 750000 | 01-JAN-13 02.00.00.000000 AM | Services
 107    | TestName1 | 123     | 650000 | 01-JAN-13 12.05.00.000000 PM | Services
 108    | TestName2 | Lname%  | 600000 | 01-JAN-13 12.00.00.000000 PM | Insaurance

je veux trouver le plus haut et le plus bas salaire a partir du tableau ci-dessus dans oracle sql.
si je ne

 select max(salary) from (select * from (select salary from employee) where   rownum <2);

il retourne MAX(SALARY) = 100000 où il doit retourner 800000

Si je ne

select max(salary)
  from (select * from (select salary from employee) 
         where rownum <3);

il retourne MAX(SALARY) = 800000

Si je ne

select min(salary)
  from (select * from(select salary from employee)
         where rownum < 2);

il sera de retour MIN(SALARY) = 100000 où il doit retourner 70000.

Ce qui est mauvais dans cette requête?

ce que devrait être la bonne question?

  • Quel est le type de données sur la colonne de salaire? Avez-vous besoin de to_number() il?
  • Remarque: l'utilisation de rownum filtres sans order by clauses est généralement, si pas toujours, un bug.
  • ROWNUM ne permettra pas d'assurer l'ordre des lignes retournées. C'est juste un pseudo et de colonne est affectée après les lignes sont retournées. Et sans un ORDER BY il n'y a pas de garantie de l'ordre et les lignes sont retournées au hasard. Voir stackoverflow.com/a/30321788/3989608
  • Vous devez choisir les bonnes réponses si ils vous ont aidé. Vous n'êtes pas de donner aux gens qui répondre à vos questions, tout crédit pour le moment.