Toàn tập SQL - Bài tập Lệnh SELECT Database Toàn tập - tinh gọn nhất
Bài kiểm dưới đây là tập hợp toàn bộ các lệnh SELECT SQL tinh gọn, từ đơn giản đến phức tạp, gồm đầy đủ các tình huống thực tế, giúp chúng ta hiểu rõ về Cơ sở dữ liệu Quan hệ. Các câu lệnh kiểm tra tương thích chạy với MySql, và hầu hết sẽ tương thích với Microsoft SQL, Microsoft Access hay Oracle Database!Cho Database SPJ gồm 4 bảng: job, part, supplier, spj:
40 Câu hỏi truy vấn gồm hầu hết các tình huống thực tế:
1. List full details of all suppliers (5 rows)
Tìm tất cả nhà cung cấp - suppliers
2. List full details of all jobs (7 rows)
Tìm tất cả các nghề - jobs
3. List full details of all parts (6 rows)
Tìm tất cả các sản phẩm - parts
4. List full details of all red parts (3 rows)
Tìm các sản phẩm có màu đỏ - red
5. List all part names (6 rows)
Tìm tất cả tên sản phẩm - part names
6. List all part names of green parts (1 rows)
Tìm tất cả tên sản phẩm, có màu xanh green
7. List the cities in which jobs are located (5 rows)
Tìm các thành phố mà jobs đặt ở đó
8. List job names for all jobs in Paris (1 rows)
Tìm tên các jobs ở Paris
9. List supplier numbers for suppliers who supply job J1 (3 rows)
Tìm sno của nhà cung cấp supplier có jno là J1
10. List supplier numbers for suppliers who supply job J3 with part P6 (1 rows)
Tìm sno nhà cung cấp mà có cung cấp jno = J3 và pno = P6
11. List part numbers and names for parts weighing 17 or more units (3 rows)
Tìm nhà cung cấp pno và tên pname có weight = 17 với hơn 1 đơn vị cung cấp
12. List job names for jobs which are not located in Paris or London (4 rows)
Tìm các jname không được phân phối ở Paris hoặc London
13. For each row in spj, list the part names and their respective quantities (24 rows)
Mỗi hàng ở spj, tìm ra tất cả part names (pname) và số lượng tương ứng
14. List all pairs of city values such that a supplier in the first city supplies a job in the second (24 rows)
Tìm tất cả các cặp của thành phố (city) mà một nhà cung cấp (sno) trong city thứ nhất cung cấp 1 job cho city thứ 2
15. List all (city, pno, city) triples such that a supplier in the first city supplies the specified part to a job in the second (24 rows)
Tìm bộ 3 (city, pno, city) mà một nhà cung cấp sno ở thành phố thứ nhất cung cấp part tới một job (jno) ở thành phố thứ 2
16. List all pairs of supplier numbers for suppliers that are located in the same city (2 rows)
Tìm các cặp sno của nhà cung cấp ở cùng thành phố
17. List the Cartesian product of the part and spj tables. How many rows would you expect ? (? rows)
Tìm "Tích Đề các" của bảng part (6 hàng) và bảng spj (24 hàng), bao nhiêu hàng kết quả?
18. Produce a meaningful version of the spj table with supplier name, part name, job name and quantity (24 rows)
Tìm bảng tổng kết với số liệu: tên nhà cung cấp , tên sản phẩm, tên job và số lượng
19. List job numbers of jobs which have the same part supplied by more than one supplier (2 rows)
Liệt kê jno của các job mà có pno tương tự được cung cấp bởi nhiều hơn 1 nhà cung cấp
20. List the job names for jobs supplied by supplier S1 (2 rows)
Liệt kê tên job cho các jobs được cung cấp bởi nhà cung cấp S1
21. List the supplier numbers for suppliers who supply job J1 with a red part (1 rows)
Liệt kê các sno của các nhà cung cấp có cung cấp job J1 với một sản phẩm màu đỏ (red part)
22. List the part numbers for parts supplied to any job in London (provide two solutions - one using a subquery and one using a join) (3 rows)
Liệt kê các pno của các parts có cung cấp tới job bất kỳ ở Lodon (đưa ra 2 giải pháp - một sử dụng Query lồng, một sử dụng cách Join bảng)
23. List the supplier numbers for suppliers who supply a Paris or London job with a red part (2 rows)
Liệt kê các số sno cho các nhà cung cấp mà họ cung cấp job ở Paris hoặc London với part đỏ (red part)
24. List the supplier numbers for suppliers supplying at least one part supplied by at least one supplier who supplies at least one red part (use a nested subquery and think about it!!!) (5 rows)
Liệt kê các số supplier sno mà cung cấp ít nhất một part cung cấp bởi ít nhất một nhà cung cấp (supplier rows) mà có cung cấp ít nhất một part màu đỏ (gợi ý sử dụng subquery lồng và nghĩ kỹ về nó)
25. List supplier numbers for suppliers who supply both jobs J1 and J2 (2 rows)
Liệt kê sno của nhà cung cấp mà có cung cấp cả 2 job J1, J2
26. List part names beginning with 'C' (2 rows)
Liệt kê pname bắt đầu với 'C'
27. List supplier names with the third letter 'a' (3 rows)
Liệt kê snake chứa ký tự 'a' ở vị trí thứ 3
28. List part names for parts that are red, pink or blue (5 rows)
Liệt kê pname cho các part color: red, pink or blue
29. List part names for parts that cost between 1.00 and 2.00 units (1 rows)
Liệt kê các pname với parts có giá từ 1 đến 2 đơn vị
30. How much is the most expensive part? (1 rows)
Part nào có giá đắt nhất?
31. How many different parts does each job have? (7 rows)
Bao nhiêu part khác nhau mà mỗi job có?
32. List the total quantities of each part (6 rows)
Tìm tổng số lượng mỗi part
33. List the job numbers of jobs with more than 1000 parts? (4 rows)
Tìm jno của jobs có trên 1000 parts
34. List the supplier numbers for suppliers which supply job J2 with more than one part (2 rows)
Tìm các supplier sno có cung cấp job J2 nhiều hơn một part
35. List part names and weights in order heaviest to lightest (6 rows)
Tìm các pname và trọng lượng ( weight) theo thứ tự nặng đến nhẹ nhất
36. List total quantities of each part in ascending order (6 rows)
Tìm tổng số mỗi part theo thứ tự giảm
37. How many jobs have more than 1000 parts? (1 rows)
Có bao nhiêu jobs có nhiều hơn 1000 parts?
38. List each part name with the total quantity of each part in descending order (6 rows)
TÌm mỗi pname với tổng số mỗi part theo thứ tự giảm
39. Find the cost in materials for each jobs listed by jobs name (7 rows)
Tìm giá tổng (giá x số lượng) của mỗi jobs với tên jobs
40. What is the name of the most expensive jobs? (1 rows)
Tìm tên của jobs đắt giá nhất
Hướng dẫn: bạn có thể xem lại nhiều lần các câu hỏi và đáp án, để hiểu rõ cơ chế hoạt động của lệnh Query Select - CSDL Quan hệ
Tài liệu được biên soạn chỉnh sửa với nguồn tham khảo Oracle Database
Các tin trước
Cài đặt MySQL trên Ubuntu 20.04 2020-07-30 Cấu hình sudoers file trên Ubuntu và Centos 2020-07-07 Tạo sudo cho user mới trên Ubuntu 20.04 [Quickstart] 2020-06-22 Cài đặt và sử dụng Docker trên Ubuntu 20.04 2020-06-09 Cài đặt Node.js trên Ubuntu 20.04 2020-05-08 Cài đặt Java bằng apt trên Ubuntu 18.04 2020-05-07 Cài đặt và cấu hình VNC trên Ubuntu 18.04 2020-05-07 Cài đặt Java với Apt trên Ubuntu 20.04 2020-05-07 Cài đặt Nginx trên Ubuntu 18.04 2020-05-06 Cài đặt và bảo mật phpMyAdmin trên Ubuntu 20.04 2020-05-04