ใช้ MIN() และ MAX() ร่วมกับ UNION ไวยากรณ์:
SELECT * FROM yourTableName WHERE yourColumnName = (SELECT MIN(yourColumnName) FROM yourTableName) UNION SELECT * FROM yourTableName WHERE yourColumnName = (SELECT MAX(yourColumnName) FROM yourTableName);
สร้างตาราง:
mysql> create table FirstAndLastDataDemo ( EmployeeId int NOT NULL AUTO_INCREMENT PRIMARY KEY, EmployeeName varchar(20), EmployeeAge int ); Query OK, 0 rows affected (0.59 sec)
แทรกข้อมูล 9 แถว...
แสดงข้อมูล:
mysql> select * from FirstAndLastDataDemo;
ผลลัพธ์
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | 1 | John | 23 | | 2 | Bob | 13 | | 3 | Larry | 24 | | 4 | Sam | 14 | | 5 | Mike | 31 | | 6 | James | 18 | | 7 | Maxwell | 28 | | 8 | David | 27 | | 9 | Chris | 22 | +------------+--------------+-------------+ 9 rows in set (0.00 sec)
คำสั่งดึงแถวแรกและสุดท้าย:
mysql> SELECT * FROM FirstAndLastDataDemo WHERE EmployeeId = (SELECT MIN(EmployeeId) FROM FirstAndLastDataDemo) UNION SELECT * FROM FirstAndLastDataDemo WHERE EmployeeId = (SELECT MAX(EmployeeId) FROM FirstAndLastDataDemo);
ผลลัพธ์
+------------+--------------+-------------+ | EmployeeId | EmployeeName | EmployeeAge | +------------+--------------+-------------+ | 1 | John | 23 | | 9 | Chris | 22 | +------------+--------------+-------------+ 2 rows in set (0.00 sec)