sql >> Databáze >  >> RDS >> Oracle

Oracle SQL Hledání 5 nejnižších platů

V Oracle 12c :

-- more than 5 rows being returned, if multiple rows 
-- match the value of the 5th row
SELECT e.ID_No, e.Name
  FROM Employees e
 ORDER BY e.Salary  
 FETCH FIRST 5 ROWS WITH TIES;

-- only 5 rows being returned, even if multiple rows 
-- match the value of the 5th row
SELECT e.ID_No, e.Name
  FROM Employees e
 ORDER BY e.Salary  
 FETCH FIRST 5 ROWS ONLY; 

-- NEXT clause may be replaced with FIRST  
SELECT e.ID_No, e.Name
  FROM Employees e
 ORDER BY e.Salary 
 FETCH NEXT 5 ROWS ONLY; 

Před Oracle 12c :

SELECT e.ID_No, e.Name
  FROM ( SELECT ID_No, Name, row_number() over (order by salary) seq FROM Employees ) e
 WHERE e.seq <= 5
 ORDER BY e.seq; 

dotazy lze použít pro Nejčastější dotazy



  1. Uzamčení databáze MySQL tak, aby dotaz mohla spustit pouze jedna osoba?

  2. SQL - Vyhledání objednávek pouze s konkrétními položkami a zobrazení podle produktu

  3. Jak změnit duplicitní řádky na jedinečné hodnoty v mysql?

  4. Předejte proměnnou do spouštěče