Trong đó CodeID là CustomerID/EmployeeID, Name là Companyname/LastName + FirstName, Phone là Homephone.. 4.[r]
Trang 1Mục tiêu:
Biết cách truy vấn dữ liệu bằng lệnh SELECT
BÀI T P TU N 2-3 ẬP TUẦN 2-3 ẦN 2-3
li u Cú ệu Cú pháp:
SELECT [ALL | DISTINCT] [TOP n [WITH TIES]] select_list
[ INTO new_table ]
FROM table_source
[ WHERE search_condition ]
[ GROUP BY group_by_expression ]
[ HAVING search_condition ]
[ ORDER BY order_expression [ ASC | DESC ] ]
• ORDER BY : S p ắp x p ếp
• WHERE: Đi u ều ki n ện
• GROUP BY: Nhóm
• HAVING: Đi u ki n ều ện nhóm
a) Truy v n đ n ấn dữ ơn gi n ản
Hi n th t t c các c t có trong m t ển thị tất cả các cột có trong một ị tất cả các cột có trong một ấn dữ ản ột có trong một ột có trong một
Table Cú pháp: SELECT * FROM <
tablename> Ví d : SELECT * FROMụ: SELECT * FROM
Customers
Ch n m t vài c t trong m t Table ọn một vài cột trong một Table ột có trong một ột có trong một ột có trong một
SELECT OrderID, OrderDate, CustomerID FROM Orders
Truy v n lo i b các dòng b trùng: ấn dữ ại bỏ các dòng bị trùng: ỏ các dòng bị trùng: ị tất cả các cột có trong một
Cú pháp: Select Distinct
Ví d :ụ: SELECT * FROM
SELECT DISTINCT Order_Date as “Date of Order” FROM Orders Truy v n dùng các toán t chu n trong bi u th c đi u ki n:ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ử chuẩn trong biểu thức điều kiện: ẩn trong biểu thức điều kiện: ểu thức điều kiện: ức điều kiện: ều kiện: ện:
Ví d 1: ụ 1:
SELECT ProductID, UnitPrice FROM Product_T
WHERE UnitPrice < 275;
Ví d 2: ụ 1:
SELECT ProductID, ProductName,UnitPrice FROM Products
WHERE ProductName like ‘N%’
AND UnitPrice > 300
Trang 2b) Truy v n trên nhi u ấn dữ ều b ng ản
Ví d :ụ: SELECT * FROM
SELECT c.CustomerID, CompanyName, OrderID, OrderDate
FROM Customers C INNER JOIN Orders O
ON C.CustomerID = O.CustomerID
c) Truy v n seft join: Truy v n trên m t b ng liên k t v i chính ấn dữ ấn dữ ột có trong một ản ết với chính ới chính nó
Ví d :ụ: SELECT * FROM
SELECT e.Firstname+' '+e.Lastname AS 'Employee' ,
m.Firstname+' '+m.Lastname AS 'Manager'
FROM Employees e JOIN Employees m
ON e.ManagerID = m.EmployeeID
d)L nh Union: ệu Cú Union n i k t qu t nhi u câu l nhối kết quả từ nhiều câu lệnh ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ừ nhiều câu lệnh ều kiện: ện:
select Ví d :ụ: SELECT * FROM
SELECT Firstname+' '+Lastname AS name, Homephone
FROM Employees
UNION
SELECT Companyname, Phone
FROM Customers
e) Truy v n k t ấn dữ ết với chính nhóm:
Các hàm t ng h p - Aggregate Functions: t ng h p thông tin t nhi u ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ợp - Aggregate Functions: tổng hợp thông tin từ nhiều ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ợp - Aggregate Functions: tổng hợp thông tin từ nhiều ừ nhiều câu lệnh ều kiện:
b thành m tộ thành một ộ thành một b ộ thành một
Ch c năng grouping đức điều kiện: ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ử chuẩn trong biểu thức điều kiện: ụ: SELECT * FROMc s d ng đ t o nhóm trểu thức điều kiện: ạo nhóm trước khi thực hiện tổng hợp ước khi thực hiện tổng hợpc khi th c hi n t ng h pực hiện tổng hợp ện: ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ợp - Aggregate Functions: tổng hợp thông tin từ nhiều
d li u.ữ liệu ện:
Các hàm t ng h p: COUNT, SUM, MAX, MIN, AVG.ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ợp - Aggregate Functions: tổng hợp thông tin từ nhiều
Ví d : ụ 1:
SELECT SUM(quantity)
AS ‘Sum of Quantity‘ FROM [Order Details]
M nh đ GROUP BY: ệu Cú ều ch đ nh các thu c tính k t nhóm xu t hi n trongỉ định các thuộc tính kết nhóm xuất hiện trong ịnh các thuộc tính kết nhóm xuất hiện trong ộ thành một ết quả từ nhiều câu lệnh ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ện:
m nh đ ện: ều kiện: select, k t qu c a hàm th ng kê đết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ủa hàm thống kê được áp dụng cho các bộ trong ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c áp d ng cho các b trongụ: SELECT * FROM ộ thành một cùng m t nhóm.ộ thành một
Ví d : T ng ti n c a t ng hóa đ nụ: SELECT * FROM ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ủa hàm thống kê được áp dụng cho các bộ trong ừ nhiều câu lệnh ơn
SELECT orderid, SUM(quantity+unitprice)
AS ‘Total‘ FROM [Order Details]
GROUP BY orderid
M nh đ Having ệu Cú ều : xác đ nh đi u ki n l c sau khi nhóm d li u ịnh các thuộc tính kết nhóm xuất hiện trong ều kiện: ện: ọc sau khi nhóm dữ liệu ữ liệu ện:
Ví d : Danh sách các hóa đ n có t ng ti n l n h nụ: SELECT * FROM ơn ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ớc khi thực hiện tổng hợp ơn
10000000 SELECT orderid, SUM(quantity+unitprice)
Trang 3AS ‘Total‘ FROM [Order Details]
GROUP BY ordered
HAVING SUM(quantity+unitprice)>10000000
Có th t o m t b ng m i d a vào k t qu c a câu l nh ểu thức điều kiện: ạo nhóm trước khi thực hiện tổng hợp ộ thành một ả từ nhiều câu lệnh ớc khi thực hiện tổng hợp ực hiện tổng hợp ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ủa hàm thống kê được áp dụng cho các bộ trong ện:
select Ví d :ụ: SELECT * FROM
SELECT C.CustomerID AS NameId, OrderID, OrderDate INTO Customer_Order
FROM Customers C INNER JOIN Orders O
ON C.CustomerID = O.CustomerID WHERE month(OrderDate) = 7
Nested query là m t query ch a m t query khác, query độ thành một ức điều kiện: ộ thành một ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c ch a bên trongức điều kiện:
g i là ọc sau khi nhóm dữ liệu subquery Subquery thường xuất hiện trong mệnh đề WHERE củang xu t hi n trong m nh đ WHERE c aấn dùng các toán tử chuẩn trong biểu thức điều kiện: ện: ện: ều kiện: ủa hàm thống kê được áp dụng cho các bộ trong query Ngoài ra Subquery cũng có th xu t hi n trong m nh đ FROM ho cểu thức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ện: ện: ều kiện: ặc HAVING
Các phép toán dùng trong nested query
IN: so sánh m t giá tr v v i m t t p giá tr V, k t qu là TRUE n u v t nộ thành một ịnh các thuộc tính kết nhóm xuất hiện trong ớc khi thực hiện tổng hợp ộ thành một ập giá trị V, kết quả là TRUE nếu v tồn ịnh các thuộc tính kết nhóm xuất hiện trong ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ết quả từ nhiều câu lệnh ồn
t i trongạo nhóm trước khi thực hiện tổng hợp V
Ví d : ụ 1:
SELECT Orderid, orderdate FROM [Orders] WHERE Orderid IN (SELECT Orderid FROM [Customers] WHERE city = ‘Lon don’)
NOT IN: so sánh m t giá tr ộ thành một ịnh các thuộc tính kết nhóm xuất hiện trong v v i m t t p giá tr ớc khi thực hiện tổng hợp ộ thành một ập giá trị V, kết quả là TRUE nếu v tồn ịnh các thuộc tính kết nhóm xuất hiện trong V, k t qu là TRUE n uết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ết quả từ nhiều câu lệnh
v
không t n t i trong ồn ạo nhóm trước khi thực hiện tổng hợp V
Ví d :ụ: SELECT * FROM
SELECT Orderid, orderdate FROM [Orders] WHERE Orderid NOT IN
(SELECT Orderid FROM [Customers] WHERE city = ‘Lon don’)
ANY: k t h p v i các phép toán ết quả từ nhiều câu lệnh ợp - Aggregate Functions: tổng hợp thông tin từ nhiều ớc khi thực hiện tổng hợp op (>, >=, <, <=, and <>), k t qu là TRUEết quả từ nhiều câu lệnh ả từ nhiều câu lệnh
n u và ch n u các giá tr trong t p ết quả từ nhiều câu lệnh ỉ định các thuộc tính kết nhóm xuất hiện trong ết quả từ nhiều câu lệnh ịnh các thuộc tính kết nhóm xuất hiện trong ập giá trị V, kết quả là TRUE nếu v tồn v th a mãn phép toán ỏa mãn phép toán op v i ít nh t làớc khi thực hiện tổng hợp ấn dùng các toán tử chuẩn trong biểu thức điều kiện:
m t giá tr trongộ thành một ịnh các thuộc tính kết nhóm xuất hiện trong V.
Ví d 1:ụ: SELECT * FROM
Select Productid, Productname, Unitprice from [Products]
Where Unitprice>ANY (Select Unitprice from [Products] where ProductName like ‘B%’)
Ví d 2:ụ: SELECT * FROM
Select Productid, Productname, Unitprice from [Products]
Where Unitprice=ANY (Select Unitprice from [Products] where ProductName like ‘B%’)
ALL: k t h p v i các phép toán ết quả từ nhiều câu lệnh ợp - Aggregate Functions: tổng hợp thông tin từ nhiều ớc khi thực hiện tổng hợp op (>, >=, <, <=, and <>), k t qu là TRUEết quả từ nhiều câu lệnh ả từ nhiều câu lệnh
n u và ch n u các giá tr trong t p ết quả từ nhiều câu lệnh ỉ định các thuộc tính kết nhóm xuất hiện trong ết quả từ nhiều câu lệnh ịnh các thuộc tính kết nhóm xuất hiện trong ập giá trị V, kết quả là TRUE nếu v tồn v th a mãn phép toán ỏa mãn phép toán op v i t t c giáớc khi thực hiện tổng hợp ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh
tr trongịnh các thuộc tính kết nhóm xuất hiện trong V
Trang 4Ví d :ụ: SELECT * FROM
Select Productid, Productname, Unitprice from [Products]
Where Unitprice>ALL (Select Unitprice from [Products] where ProductName like ‘B%’)
EXISTS: ki m tra k t qu c a subquery có r ng hay không, exists tr v ểu thức điều kiện: ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ủa hàm thống kê được áp dụng cho các bộ trong ỗng hay không, exists trả về ả từ nhiều câu lệnh ều kiện: giá tr là TRUE n u k t qu c a subquery ch a ít nh t là m t b giáịnh các thuộc tính kết nhóm xuất hiện trong ết quả từ nhiều câu lệnh ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ủa hàm thống kê được áp dụng cho các bộ trong ức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ộ thành một ộ thành một tr ịnh các thuộc tính kết nhóm xuất hiện trong
Ví d : Danh sách các s n ph m đã bán đụ: SELECT * FROM ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c
Select * from [Products] s
where EXISTS ( SELECT * from [Order Details] c
where s.Productid=c.Productid)
NOT EXISTS: tr v giá tr là TRUE n u k t qu c a subquery không ch aả từ nhiều câu lệnh ều kiện: ịnh các thuộc tính kết nhóm xuất hiện trong ết quả từ nhiều câu lệnh ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ủa hàm thống kê được áp dụng cho các bộ trong ức điều kiện:
b giá trộ thành một ịnh các thuộc tính kết nhóm xuất hiện trong nào
Ví d : Danh sách các s n ph m ch a bán ụ: SELECT * FROM ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ư
đượp - Aggregate Functions: tổng hợp thông tin từ nhiều c Select * from [Products] s where NOT EXISTS ( SELECT * from [Order Details] c where s.Productid=c.Productid)
PH N TH C HÀNH ẦN 2-3 ỰC HÀNH
BÀI T P 1: L NH SELECT – TRUY V N Đ N GI N ẬP TUẦN 2-3 ỆNH SELECT – TRUY VẤN ĐƠN GIẢN ẤN ĐƠN GIẢN ƠN GIẢN ẢN
Ch n CSDL hi n hành là NorthWind, tìm hi u c u trúc và d li u c a các b ng ọc sau khi nhóm dữ liệu ện: ểu thức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ữ liệu ện: ủa hàm thống kê được áp dụng cho các bộ trong ả từ nhiều câu lệnh Xây d ngực hiện tổng hợp sơn đồn quan hện: cho các b ngả từ nhiều câu lệnh dước khi thực hiện tổng hợp Sau đó dùng câu l nhi ện: Select … From
… Where … đ truy v n d li u nh sau, v i c u trúc c a các b ng nh sau: ểu thức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ữ liệu ện: ư ớc khi thực hiện tổng hợp ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ủa hàm thống kê được áp dụng cho các bộ trong ả từ nhiều câu lệnh ư
Products(ProductID,ProductName, SupplierID, UnitPrice, UnitInStock, … ) Customers(CustomerID, CompanyName, Address, City, Region, Country, …) Employees(EmployeeID, LastName, FirstName, BirthDate, City, …)
Orders(OderID, CustomerID, EmployeeID, OrderDate,…)
Order Details(OrderID, ProductID, UnitPrice, Quantity, Discount)
Suppliers(SupplierID, SupplierName,…)
Chú ý: N u câu nào mà b n đánh đúng l nh mà k t qu không có, b n cho ết với chính ại bỏ các dòng bị trùng: ệu Cú ết với chính ản ại bỏ các dòng bị trùng:
bi t t i sao? ết với chính ại bỏ các dòng bị trùng:
1 Li t kê thông tin c a t t c các s n ph mện: ủa hàm thống kê được áp dụng cho các bộ trong ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: (Products)
CompanyName, City, Phone
ProductId, ProductName, UnitPrice
EmployeeName, Phone, Age Trong đó EmployeeName đượp - Aggregate Functions: tổng hợp thông tin từ nhiều c ghép từ nhiều câu lệnh
Trang 5LastName và FirstName; Age là tu i đổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c tính t năm hi n hànhừ nhiều câu lệnh ện: (GetDate()) và năm c aủa hàm thống kê được áp dụng cho các bộ trong Birthdate
5 Li t kê danh sách các Customers có ContactTitle b t đ u b ng chện: ắt đầu bằng chữ ầu bằng chữ ằng chữ ữ liệu O
6 Danh sách các customers thành phở thành phố ối kết quả từ nhiều câu lệnh Paris
7 Li t kê danh sách Customers thành ph LonDon, Boise vàện: ở thành phố ối kết quả từ nhiều câu lệnh Paris
8 Li t kê danh sách Customers có tên b t đ u b ng ch V mà thành ph ện: ắt đầu bằng chữ ầu bằng chữ ằng chữ ữ liệu ở thành phố ối kết quả từ nhiều câu lệnh Lyon
9 Li t kê danh sách các Customers không có sện: ối kết quả từ nhiều câu lệnh fax
10. Li t kê danh sách các Customers có sện: ối kết quả từ nhiều câu lệnh Fax
12. Li t kê danh sách các products có t ‘Boxes’ trong c tện: ừ nhiều câu lệnh ộ thành một
QuantityPerUnit
13. Li t kê danh sách các products có Unitprice l n h n 10 và nh h nện: ớc khi thực hiện tổng hợp ớc khi thực hiện tổng hợp ỏa mãn phép toán ơn 15
14. Li t kê danh sách các orders có OrderDate đện: ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ập giá trị V, kết quả là TRUE nếu v tồnc l p trong tháng 9 năm 1996
15. Li t kê danh sách các products ng v i ti n t n v n Thông tin baoện: ức điều kiện: ớc khi thực hiện tổng hợp ều kiện: ồn ối kết quả từ nhiều câu lệnh
g m ProductId, ProductName, Unitprice, UnitsInStock, TotalAccount.ồn Trong đó TotalAccount= UnitsInStock * Unitprice
16. Li t kê danh sách 5 customers có city b t đ uện: ắt đầu bằng chữ ầu bằng chữ ‘M’
17. Li t kê danh sách 2 employees có tu i l n nh t Thông tin bao g mện: ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ớc khi thực hiện tổng hợp ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ồn EmployeeID, EmployeeName, Age Trong đó, EmployeeName đượp - Aggregate Functions: tổng hợp thông tin từ nhiều c ghép từ nhiều câu lệnh LastName và FirstName; Age là năm hi n hành tr nămện: ừ nhiều câu lệnh sinh
18. Li t kê danh sách các Products có s lện: ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng t n nh h nồn ỏa mãn phép toán ơn 5
19. Li t kê danh sách các Orders g m OrderId, Productid, Quantity, ện: ồn
Unitprice, Discount, ToTal = Quantity * unitPrice – 20%*Discount
20. Li t kê danh sách các Employees không thành ph London vàện: ở thành phố ối kết quả từ nhiều câu lệnh
Redmond
BÀI T P 2: L NH SELECT – TRUY V N CÓ K T N I ẬP TUẦN 2-3 ỆNH SELECT – TRUY VẤN ĐƠN GIẢN ẤN ĐƠN GIẢN ẾT NỐI ỐI
1 Li t kê các customer không có l p hóa đ n trong thángện: ập giá trị V, kết quả là TRUE nếu v tồn ơn 7/1997
2 Li t kê các customer có l p hóa đ n trong 15 ngày đ u tiên c aện: ập giá trị V, kết quả là TRUE nếu v tồn ơn ầu bằng chữ ủa hàm thống kê được áp dụng cho các bộ trong 7/1997
3 Li t kê danh sách các s n ph m đện: ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c giao vào ngày 16/7/1996
4 Li t kê danh sách các hóa đ n c a các Customers mua hàng trong tháng ện: ơn ủa hàm thống kê được áp dụng cho các bộ trong 4,
9 c a năm 1997 Thông tin g m Orderid, CompanyName, OrderDate,ủa hàm thống kê được áp dụng cho các bộ trong ồn RequiredDate, đượp - Aggregate Functions: tổng hợp thông tin từ nhiều ắt đầu bằng chữc s p x p theo CompanyName, cùng Companyname thìết quả từ nhiều câu lệnh theo OrderDate gi m d n.ả từ nhiều câu lệnh ầu bằng chữ
5 Li t kê danh sách các hóa đ n do nhân viên có Lastname là Fullerện: ơn l p.ập giá trị V, kết quả là TRUE nếu v tồn
6 Li t kê danh sách các Products do nhà cung c p (supplier) có mã 1,3,6 bánện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện:
đượp - Aggregate Functions: tổng hợp thông tin từ nhiều c trong tháng 6,7 c a năm 1997, đủa hàm thống kê được áp dụng cho các bộ trong ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ắt đầu bằng chữc s p x p theo mã nhà cung c pết quả từ nhiều câu lệnh ấn dùng các toán tử chuẩn trong biểu thức điều kiện: (SupplierID), cùng mã nhà cung c p thì s p x p theoấn dùng các toán tử chuẩn trong biểu thức điều kiện: ắt đầu bằng chữ ết quả từ nhiều câu lệnh ProductID
7 Li t kê danh sách các Products đã bán có Discount làện: 1
8 Li t kê danh sách các Products có đ n giá bán b ng đ n giáện: ơn ằng chữ ơn mua
Trang 69 Li t kê danh sách các Products mà hóa đ n có OrderID là 10248 đãện: ơn mua 10.Li t kê danh sách các Employers đã l p các hóa đ n trong tháng 7 c a ện: ập giá trị V, kết quả là TRUE nếu v tồn ơn ủa hàm thống kê được áp dụng cho các bộ trong năm 1996
11.Li t kê danh sách các s n ph m Products ch a bán đện: ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ư ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c trong tháng 6 năm 1996
12.Li t kê danh sách các Employes không l p hóa đ n vào ngày hômện: ập giá trị V, kết quả là TRUE nếu v tồn ơn nay 13.Li t kê danh sách các Customers ch a mua hàng trong nămện: ư 1997
14.Li t kê danh sách các nhà cung c p Suppliers không cung c p Products có ện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện:
mã là 59
15. Tìm t t c các Customers mua các s n ph m có tên b t đ u b ng ch T ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ắt đầu bằng chữ ầu bằng chữ ằng chữ ữ liệu trong tháng 7
BÀI T P 3: L NH SELECT – TRUY V N GOM NHÓM ẬP TUẦN 2-3 ỆNH SELECT – TRUY VẤN ĐƠN GIẢN ẤN ĐƠN GIẢN
1 Danh sách các orders ng v i t ng ti n c a t ng hóa đ n Thông tin baoức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ủa hàm thống kê được áp dụng cho các bộ trong ừ nhiều câu lệnh ơn
g m OrdersId, OrderDate, TotalAccount Trong đó TotalAccount là Sumồn
c a Quantity * Unitprice, k t nhóm theoủa hàm thống kê được áp dụng cho các bộ trong ết quả từ nhiều câu lệnh OrderId
2 Danh sách các orders ng v i t ng ti n c a t ng hóa đ n có Shipcity làức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ủa hàm thống kê được áp dụng cho các bộ trong ừ nhiều câu lệnh ơn
‘Madrid’ Thông tin bao g m OrdersId, OrderDate, TotalAccount Trong đóồn TotalAccount là Sum c a Quantity * Unitprice, k t nhóm theoủa hàm thống kê được áp dụng cho các bộ trong ết quả từ nhiều câu lệnh OrderId
3 Danh sách các products có t ng s lổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng l p hóa đ n l nập giá trị V, kết quả là TRUE nếu v tồn ơn ớc khi thực hiện tổng hợp nh t.ấn dùng các toán tử chuẩn trong biểu thức điều kiện:
4 Cho bi t m i customers đã l p bao nhiêu hóa đ n Thông tin g mết quả từ nhiều câu lệnh ỗng hay không, exists trả về ập giá trị V, kết quả là TRUE nếu v tồn ơn ồn CustomerID, CompanyName, CountOfOrder Trong đó CountOfOrder (t ngổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều
s hóa đ n) đối kết quả từ nhiều câu lệnh ơn ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c đ m (Count) theo t ngết quả từ nhiều câu lệnh ừ nhiều câu lệnh Customers
5 Cho bi t m i Employee đã l p đết quả từ nhiều câu lệnh ỗng hay không, exists trả về ập giá trị V, kết quả là TRUE nếu v tồn ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c bao nhiêu hóa đ n, ng v i t ngơn ức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ti n.ều kiện:
6 Danh sách các customer ng v i t ng ti n các hoá đ n đức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ơn ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c l p tập giá trị V, kết quả là TRUE nếu v tồn ừ nhiều câu lệnh 31/12/1996 đ nết quả từ nhiều câu lệnh 1/1/1998
7 Danh sách các customer ng v i t ng ti n các hoá đ n, mà các hóa đ nức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ơn ơn
đượp - Aggregate Functions: tổng hợp thông tin từ nhiều ập giá trị V, kết quả là TRUE nếu v tồn ừ nhiều câu lệnhc l p t 31/12/1996 đ n 1/1/1998 và t ng ti n các hóa đ nết quả từ nhiều câu lệnh ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ơn >20000
8 Danh sách các customer ng v i t ng s hoá đ n, t ng ti n các hoá đ n,ức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ơn ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ơn
mà các hóa đ n đơn ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ập giá trị V, kết quả là TRUE nếu v tồnc l p t 31/12/1996 đ n 1/1/1998 và t ng ti n cácừ nhiều câu lệnh ết quả từ nhiều câu lệnh ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: hóa đ n >20000 Thông tin đơn ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c s p x p theo CustomerID, cùng mã thìắt đầu bằng chữ ết quả từ nhiều câu lệnh
s p x p theo t ng ti n gi mắt đầu bằng chữ ết quả từ nhiều câu lệnh ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ả từ nhiều câu lệnh d n.ầu bằng chữ
9 Danh sách các Category có t ng s lổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng t n (UnitsInStock) l n h n 300,ồn ớc khi thực hiện tổng hợp ơn
đ n giá trung bình nh h n 25 Thông tin k t qu bao g m CategoryID,ơn ỏa mãn phép toán ơn ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ồn CategoryName, Total_UnitsInStock, Average_Unitprice
10.Danh sách các Category có t ng s product l n h n 10 Thông tin k t quổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ớc khi thực hiện tổng hợp ớc khi thực hiện tổng hợp ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh bao g m CategoryID, CategoryName,ồn Total_UnitsInStock
11.Danh sách các product theo t ng CategoryName, thông tin bao g m:ừ nhiều câu lệnh ồn Productname, CategoryName, Unitprice, UnitsinStock Có dùng m nh đện: ều kiện: COMPUTE đ li t kê đ n giá trung bình, t ng s lểu thức điều kiện: ện: ơn ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng t n (sum ofồn UnitsinStock) theo t ngừ nhiều câu lệnh CategoryName
12.Danh sách các Customer ng v i t ng ti n c a các hóa đ n t ng tháng.ức điều kiện: ớc khi thực hiện tổng hợp ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ều kiện: ủa hàm thống kê được áp dụng cho các bộ trong ơn ở thành phố ừ nhiều câu lệnh Thông tin bao g m CustomerID, CompanyName, Month_Year, Total Trongồn
đó Month_year là tháng và năm l p hóa đ n, Total là t ng c a Unitprice*ập giá trị V, kết quả là TRUE nếu v tồn ơn ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ủa hàm thống kê được áp dụng cho các bộ trong
Trang 7Quantity, có th ng k t ng c a total theo t ng Customer và Month_Year ối kết quả từ nhiều câu lệnh ết quả từ nhiều câu lệnh ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ủa hàm thống kê được áp dụng cho các bộ trong ừ nhiều câu lệnh (có dùng COMPUTE)
13.Cho bi t Employees nào bán đết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều c nhi u ti n nh t trong 7 c a nămều kiện: ều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ủa hàm thống kê được áp dụng cho các bộ trong 1997 14.Danh sách 3 khách có nhi u đ n hàng nh t c a nămều kiện: ơn ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ủa hàm thống kê được áp dụng cho các bộ trong 1996
15.Cho bi t khách hàng nào có s l n mua hàng l n h n 10 trong nămết quả từ nhiều câu lệnh ối kết quả từ nhiều câu lệnh ầu bằng chữ ớc khi thực hiện tổng hợp ơn 1997
Trang 8BÀI T P 4: L NH SELECT – TRUY V N CON SUBQUERY ẬP TUẦN 2-3 ỆNH SELECT – TRUY VẤN ĐƠN GIẢN ẤN ĐƠN GIẢN
1 Các product có đ n giá l n h n đ n giá trung bình c a cácơn ớc khi thực hiện tổng hợp ơn ơn ủa hàm thống kê được áp dụng cho các bộ trong product
2 Các product có đ n giá l n h n đ n giá trung bình c a các product có ơn ớc khi thực hiện tổng hợp ơn ơn ủa hàm thống kê được áp dụng cho các bộ trong ProductName b t đ u làắt đầu bằng chữ ầu bằng chữ ‘N’
3 Cho bi t nh ng s n ph m có tên b t đ u b ng ch N và đ n giá > đ n giá ết quả từ nhiều câu lệnh ữ liệu ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ắt đầu bằng chữ ầu bằng chữ ằng chữ ữ liệu ơn ơn
c a s n ph mủa hàm thống kê được áp dụng cho các bộ trong ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: khác
4 Danh sách các products đã có khách hàng đ t hàng (t c là ProductId cóặc ức điều kiện: trong Order Details) Thông tin bao g m ProductId, ProductName,ồn Unitprice
5 Danh sách các products có đ n giá nh p l n h n đ n giá bán nh nh t c aơn ập giá trị V, kết quả là TRUE nếu v tồn ớc khi thực hiện tổng hợp ơn ơn ỏa mãn phép toán ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ủa hàm thống kê được áp dụng cho các bộ trong
t t c cácấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh Products
6 Danh sách các hóa đ n c a nh ng Customers mà Customers thành ph ơn ủa hàm thống kê được áp dụng cho các bộ trong ữ liệu ở thành phố ối kết quả từ nhiều câu lệnh LonDon và Madrid
7 Danh sách các products có đ n v tính có ch Box và có đ n giá mua nh ơn ịnh các thuộc tính kết nhóm xuất hiện trong ữ liệu ơn ỏa mãn phép toán
h n đ n giá trung bình c a t t c cácơn ơn ủa hàm thống kê được áp dụng cho các bộ trong ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh Products
8 Danh sách các Products có s lối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng (Quantity) bán đượp - Aggregate Functions: tổng hợp thông tin từ nhiều ớc khi thực hiện tổng hợp nh t.c l n ấn dùng các toán tử chuẩn trong biểu thức điều kiện:
9 Danh sách các Customer ch a t ng l p hóa đ n (vi t b ng ba cách: dùng ư ừ nhiều câu lệnh ập giá trị V, kết quả là TRUE nếu v tồn ơn ết quả từ nhiều câu lệnh ằng chữ NOT EXISTS, dùng LEFT JOIN, dùng NOT IN )
10.Cho bi t các s n ph m có đ n giá bán caoết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ơn nh tấn dùng các toán tử chuẩn trong biểu thức điều kiện:
11.Cho bi t các s n ph m có đ n v tính có ch a ch box và có đ n giá bán ết quả từ nhiều câu lệnh ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ơn ịnh các thuộc tính kết nhóm xuất hiện trong ức điều kiện: ữ liệu ơn cao nh tấn dùng các toán tử chuẩn trong biểu thức điều kiện:
12.Danh sách các products có đ n giá bán l n h n đ n giá bán trung bình c aơn ớc khi thực hiện tổng hợp ơn ơn ủa hàm thống kê được áp dụng cho các bộ trong các Products có ProductId<=5
13.Danh sách các Customers và các Employees không cùng thànhở thành phố phối kết quả từ nhiều câu lệnh
14.Cho bi t nh ng s n ph m nào có t ng s lết quả từ nhiều câu lệnh ữ liệu ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: ổng hợp - Aggregate Functions: tổng hợp thông tin từ nhiều ối kết quả từ nhiều câu lệnh ượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng bán đượp - Aggregate Functions: tổng hợp thông tin từ nhiều ớc khi thực hiện tổng hợpc l n h n s ơn ối kết quả từ nhiều câu lệnh
lượp - Aggregate Functions: tổng hợp thông tin từ nhiều ng trung bình bán ra
15.Li t kê danh sách các khách hàng mua các hóa đ n mà các hóa đ n này ch ện: ơn ơn ỉ định các thuộc tính kết nhóm xuất hiện trong mua nh ng s n ph m có mãữ liệu ả từ nhiều câu lệnh ẩn trong biểu thức điều kiện: >=3
16.Li t kê danh sách các khách hàng mà các khách hàng này mua các hóa đ n ện: ơn
do các nhân viên l p hóa đ n cùng thành ph v i kháchập giá trị V, kết quả là TRUE nếu v tồn ơn ở thành phố ối kết quả từ nhiều câu lệnh ớc khi thực hiện tổng hợp hàng
17.Danh sách các Customers mà các Customers đã mua hàng trong tháng 7, 9 năm 1997
18.Danh sách các City có nhi u h n 3ều kiện: ơn customer
19.Tìm t t c các Customers mua ít nh t 2 đ nấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ơn hàng
20.B n hãy đ a ra câu h i cho 3 câu truy v nạo nhóm trước khi thực hiện tổng hợp ư ỏa mãn phép toán ấn dùng các toán tử chuẩn trong biểu thức điều kiện: sau:
Select ProductId, ProductName, UnitPrice from [Products]
Where Unitprice>ALL (Select Unitprice from [Products] where
ProductName like ‘B%’)
Trang 9Select ProductId, ProductName, UnitPrice from [Products]
Where Unitprice>ANY (Select Unitprice from [Products] where
ProductName like ‘B%’)
Select ProductId, ProductName, UnitPrice from [Products]
Where Unitprice=ANY (Select Unitprice from [Products] where
ProductName like ‘B%’)
BÀI T P 5: L NH SELECT – CÁC LO I TRUY V N KHÁC ẬP TUẦN 2-3 ỆNH SELECT – TRUY VẤN ĐƠN GIẢN ẠI TRUY VẤN KHÁC ẤN ĐƠN GIẢN
1 Li t kê danh sách các City có Customers ho c Employee (dùngện: ặc Union)
2 Li t kê danh sách các Country có Customers ho c Employee (dùngện: ặc Union)
3 K t danh sách các Customer và Employee l i v i nhau Thông tin g mết quả từ nhiều câu lệnh ạo nhóm trước khi thực hiện tổng hợp ớc khi thực hiện tổng hợp ồn CodeID, Name, Address, Phone Trong đó CodeID là CustomerID/EmployeeID, Name là Companyname/LastName + FirstName, Phone là Homephone
4 Danh sách các Suppliers cung c p t t c các m tấn dùng các toán tử chuẩn trong biểu thức điều kiện: ấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh ặc hàng
5. Danh sách các Customers đã mua t t c các m tấn dùng các toán tử chuẩn trong biểu thức điều kiện: ả từ nhiều câu lệnh ặc hàng