{{title}}
Gold Query Set
Showing 1-25 of 25 items.
| # | Difficulty | Question | Query |
|---|---|---|---|
| 1 | Simple | ค้นหาชื่อของสินค้าประเภท Hardware ที่มีราคาสูงที่สุด | SELECT product_name FROM products WHERE product_type_code = 'Hardware' ORDER BY product_price DESC LIMIT 1 |
| 2 | Simple | แสดงรหัสสินค้าและประเภทสินค้า ของสินค้าที่มีราคาต่ำที่สุด 1 รายการ | SELECT product_id, product_type_code FROM products ORDER BY product_price LIMIT 1 |
| 3 | Simple | แสดงรหัสของสินค้า 3 อันดับแรกที่ถูกสั่งซื้อในปริมาณที่มากที่สุด | SELECT product_id FROM product_suppliers ORDER BY total_amount_purchased DESC LIMIT 3 |
| 4 | Simple | หาชื่อและรหัสลูกค้า ที่มีที่อยู่ประกอบด้วยคำว่า "TN" | SELECT customer_name, customer_id FROM customers WHERE customer_address LIKE '%TN%' |
| 5 | Simple | แสดงชื่อและรหัสสินค้า ของสินค้าที่มีราคาอยู่ระหว่าง 600 ถึง 700 | SELECT product_name, product_id FROM products WHERE product_price BETWEEN 600 AND 700 |
| 6 | Simple | แสดงรหัสและชื่อลูกค้าที่มีที่อยู่ประกอบด้วย "WY" และไม่ได้ใช้ Credit Card ในการชำระเงิน | SELECT customer_id, customer_name FROM customers WHERE customer_address LIKE '%WY%' AND payment_method_code != 'Credit Card' |
| 7 | Simple | นับจำนวนประเภทสินค้าที่แตกต่างกันทั้งหมด | SELECT count(DISTINCT product_type_code) FROM products |
| 8 | Simple | แสดงรหัสและชื่อสินค้า ที่มีราคาต่ำกว่า 600 หรือสูงกว่า 900 | SELECT product_id, product_name FROM products WHERE product_price < 600 OR product_price > 900 |
| 9 | Simple | หารหัสอ้างอิงลูกค้าที่มีค่ามากที่สุดและน้อยที่สุด | SELECT max(customer_code), min(customer_code) FROM customers |
| 10 | Simple | แสดงรหัสใบสั่งซื้อและรหัสลูกค้า ของคำสั่งซื้อที่ถูกยกเลิก เรียงตามวันที่สั่งซื้อ | SELECT order_id, customer_id FROM customer_orders WHERE order_status_code = 'Cancelled' ORDER BY order_date |
| 11 | Medium | แสดงชื่อและเพศของพนักงานที่ได้รับการมอบหมายงานในปี 2016 | SELECT T1.staff_name, T1.staff_gender FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id WHERE T2.date_assigned_from LIKE '2016%' |
| 12 | Medium | ลูกค้าแต่ละกลุ่มวิธีการชำระเงิน มีจำนวนกี่คน | SELECT payment_method_code, count(*) FROM customers GROUP BY payment_method_code |
| 13 | Medium | แสดงชื่อของพนักงานที่ได้รับการมอบหมายงานมากกว่า 1 งาน | SELECT T1.staff_name FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id GROUP BY T2.staff_id HAVING count(*) > 1 |
| 14 | Medium | แสดงรหัสประเภทสินค้า ที่มีราคาเฉลี่ยสูงกว่าราคาเฉลี่ยของสินค้าทั้งหมด | SELECT product_type_code FROM products GROUP BY product_type_code HAVING avg(product_price) > (SELECT avg(product_price) FROM products) |
| 15 | Medium | แสดงรหัสพนักงานและเพศ ของพนักงานทุกคนที่มีตำแหน่งงานเป็น Department Manager | SELECT T1.staff_id, T1.staff_gender FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id WHERE T2.job_title_code = 'Department Manager' |
| 16 | Medium | แสดงรายละเอียดที่อยู่ สำหรับลูกค้าที่มีรหัสลูกค้าคือ 10 | SELECT T1.address_details FROM addresses AS T1 JOIN customer_addresses AS T2 ON T1.address_id = T2.address_id WHERE T2.customer_id = 10 |
| 17 | Medium | หาราคาสูงสุดและต่ำสุดของสินค้า จัดกลุ่มและเรียงตามตัวอักษรของรหัสประเภทสินค้า | SELECT max(product_price), min(product_price), product_type_code FROM products GROUP BY product_type_code ORDER BY product_type_code |
| 18 | Medium | นับจำนวนสาขาร้านค้าที่อยู่ในเครือร้านค้าชื่อ South | SELECT count(*) FROM department_stores AS T1 JOIN department_store_chain AS T2 ON T1.dept_store_chain_id = T2.dept_store_chain_id WHERE T2.dept_store_chain_name = 'South' |
| 19 | Medium | แสดงชื่อและตำแหน่งงานของพนักงานที่ได้รับการมอบหมายงานล่าสุด | SELECT T1.staff_name, T2.job_title_code FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id ORDER BY T2.date_assigned_to DESC LIMIT 1 |
| 20 | Medium | แสดงรหัสพนักงาน ที่ได้รับการมอบหมายงานก่อนพนักงานตำแหน่ง Clerical Staff คนใดก็ตาม | SELECT staff_id FROM staff_department_assignments WHERE date_assigned_to < (SELECT max(date_assigned_to) FROM staff_department_assignments WHERE job_title_code = 'Clerical Staff') |
| 21 | Hard | แสดงชื่อลูกค้า (ไม่ซ้ำกัน) ที่เคยซื้อสินค้าแตกต่างกันอย่างน้อย 3 ชนิด | SELECT DISTINCT T1.customer_name FROM customers AS T1 JOIN customer_orders AS T2 ON T1.customer_id = T2.customer_id JOIN order_items AS T3 ON T2.order_id = T3.order_id GROUP BY T1.customer_id HAVING count(DISTINCT T3.product_id) >= 3 |
| 22 | Hard | ค้นหาชื่อและที่อยู่ของลูกค้า ที่มีทั้งคำสั่งซื้อสถานะ New และ Pending | SELECT T1.customer_name, T1.customer_address FROM customers AS T1 JOIN customer_orders AS T2 ON T1.customer_id = T2.customer_id WHERE T2.order_status_code = 'New' INTERSECT SELECT T1.customer_name, T1.customer_address FROM customers AS T1 JOIN customer_orders AS T2 ON T1.customer_id = T2.customer_id WHERE T2.order_status_code = 'Pending' |
| 23 | Hard | แสดงชื่อสินค้า (ไม่ซ้ำกัน) ที่ถูกซื้อโดยลูกค้าที่แตกต่างกันอย่างน้อย 2 คน | SELECT DISTINCT T3.product_name FROM customer_orders AS T1 JOIN order_items AS T2 ON T1.order_id = T2.order_id JOIN products AS T3 ON T2.product_id = T3.product_id GROUP BY T3.product_id HAVING count(DISTINCT T1.customer_id) >= 2 |
| 24 | Hard | แสดงชื่อและเบอร์โทรศัพท์ของซัพพลายเออร์ทั้งหมด เรียงตามตัวอักษรของรายละเอียดที่อยู่ | SELECT T1.supplier_name, T1.supplier_phone FROM suppliers AS T1 JOIN supplier_addresses AS T2 ON T1.supplier_id = T2.supplier_id JOIN addresses AS T3 ON T2.address_id = T3.address_id ORDER BY T3.address_details |
| 25 | Hard | แสดงชื่อและเพศของพนักงานที่เคยได้รับมอบหมายตำแหน่ง Sales Person แต่ไม่เคยเป็น Clerical Staff | SELECT T1.staff_name, T1.staff_gender FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id WHERE T2.job_title_code = 'Sales Person' EXCEPT SELECT T1.staff_name, T1.staff_gender FROM staff AS T1 JOIN staff_department_assignments AS T2 ON T1.staff_id = T2.staff_id WHERE T2.job_title_code = 'Clerical Staff' |
