LIMIT OFFSET을 사용하여 Employee 테이블에서 최대 및 두 번째 최대 급여를 얻을 수 있습니다. 구문은 다음과 같습니다 -
SELECT yourColumnName1,yourColumnName2,....N from yourTableName ORDER BY yourColumnName desc limit 2 offset 0;
위의 구문을 이해하기 위해 테이블을 생성해 보겠습니다. 테이블을 생성하는 쿼리는 다음과 같습니다 -
mysql> create table EmployeeMaxAndSecondMaxSalary -> ( -> EmployeeId int, -> Employeename varchar(20), -> EmployeeSalary int -> ); Query OK, 0 rows affected (0.88 sec)
삽입 명령을 사용하여 테이블에 일부 레코드 삽입 -
mysql> insert into EmployeeMaxAndSecondMaxSalary values(1,'John',34566); Query OK, 1 row affected (0.20 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(2,'Bob',56789); Query OK, 1 row affected (0.17 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(3,'Carol',44560); Query OK, 1 row affected (0.26 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(4,'Sam',76456); Query OK, 1 row affected (0.29 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(5,'Mike',65566); Query OK, 1 row affected (0.14 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(6,'David',89990); Query OK, 1 row affected (0.19 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(7,'James',68789); Query OK, 1 row affected (0.12 sec) mysql> insert into EmployeeMaxAndSecondMaxSalary values(8,'Robert',76543); Query OK, 1 row affected (0.13 sec)
select 문을 사용하여 테이블의 모든 레코드를 표시합니다. 쿼리는 다음과 같습니다 -
mysql> select *from EmployeeMaxAndSecondMaxSalary;
다음은 출력입니다 -
+------------+--------------+----------------+ | EmployeeId | Employeename | EmployeeSalary | +------------+--------------+----------------+ | 1 | John | 34566 | | 2 | Bob | 56789 | | 3 | Carol | 44560 | | 4 | Sam | 76456 | | 5 | Mike | 65566 | | 6 | David | 89990 | | 7 | James | 68789 | | 8 | Robert | 76543 | +------------+--------------+----------------+ 8 rows in set (0.00 sec)
다음은 limit offset -
을 사용하여 최대 및 두 번째 최대 급여를 구하는 쿼리입니다.mysql> select EmployeeId,Employeename,EmployeeSalary from EmployeeMaxAndSecondMaxSalary order by -> EmployeeSalary desc limit 2 offset 0;
출력은 최대 급여를 받는 직원 2명의 레코드를 표시합니다. -
+------------+--------------+----------------+ | EmployeeId | Employeename | EmployeeSalary | +------------+--------------+----------------+ | 6 | David | 89990 | | 8 | Robert | 76543 | +------------+--------------+----------------+ 2 rows in set (0.00 sec)