ใน PostgreSQL หากต้องการอายุของพนักงาน 5 คนที่มีเงินเดือนสูงสุด ข้อความสั่งใดถูกต้อง

SELECT อายุ FROM พนักงาน ORDER BY เงินเดือน LIMIT 5;
SELECT อายุ FROM พนักงาน ORDER BY เงินเดือน DESC LIMIT 5;
SELECT อายุ FROM พนักงาน WHERE เงินเดือน DESC LIMIT 5;
SELECT TOP 5 อายุ FROM พนักงาน ORDER BY เงินเดือน DESC;

เฉลยอธิบาย

DESC เรียงจากมากไปน้อย LIMIT 5 ดึงแถว 5 แถวแรก ตัวเลือก A ไม่ใส่ DESC จึงเรียงต่ำไปสูง ตัวเลือก B วาง DESC ใน WHERE ไม่ได้ และ TOP เป็นไวยากรณ์ SQL Server ไม่ใช่ PostgreSQL ควรเพิ่มตัวตัดสิน เช่น employee_id เมื่อเงินเดือนเท่ากัน

ข้อสอบอื่นในวิชาการใช้ภาษา SQL

ดูข้อสอบวิชานี้ทั้งหมด →