Untitled
Lam trong gio USE Northwind SELECT * FROM Products SELECT * FROM Customers SELECT * FROM Employees SELECT * FROM Orders SELECT * FROM [Order Details] -- Hiển thị thông tin địa chỉ của từng nhân viên SELECT FirstName, LastName, [Address], TitleOfCourtesy FROM Employees -- 6.1 Đổi vị trí cột SELECT TitleOfCourtesy, FirstName, LastName, [Address] FROM Employees --6.2: ghép cột SELECT TitleOfCourtesy, FirstName+LastName, [Address] FROM Employees --6.3: clean code SELECT TitleOfCourtesy, FirstName+ ''+LastName AS Fullname, [Address] FROM Employees --6.4: clean code ver 2 SELECT TitleOfCourtesy, FirstName + ' '+ LastName Fullname, [Address] FROM Employees --7. Thực hiện gửi thiệp tri ân khách hàng của công ty SELECT CompanyName, ContactName, ContactTitle, [Address], City, Country, Phone, Fax FROM Customers --8. Phân chia danh sách theo quốc gia --Mặc định SELECT CompanyName, ContactName, ContactTitle, [Address], City, Country, Phone, Fax FROM Customers ORDER BY Country ASC --Ngược lại SELECT CompanyName, ContactName, ContactTitle, [Address], City, Country, Phone, Fax FROM Customers ORDER BY Country DESC --9. Thống kê thông tin về giá của các sản phẩm sắp xếp từ thấp đến cao SELECT ProductName, QuantityPerUnit, UnitPrice FROM Products ORDER BY UnitPrice ASC --10. Liệt kê top 10 sản phẩm có đơn giá cao nhất SELECT TOP 10 ProductName, QuantityPerUnit, UnitPrice FROM Products ORDER BY UnitPrice DESC --11. Liệt kê top 5% sản phẩm có đơn giá cao nhất SELECT TOP 5 PERCENT ProductName, QuantityPerUnit, UnitPrice FROM Products ORDER BY UnitPrice DESC --12. Thống kê chi phí đầu tư của từng sản phẩm SELECT ProductName, UnitPrice*UnitsInStock AS Chi_Phi_Dau_Tu FROM Products --13. Liệt kê top 10 sản phẩm có chi phí đầu tư cao nhất SELECT TOP 10 ProductName, ProductName, UnitsInStock ,UnitPrice*UnitsInStock AS Chi_Phi_Dau_Tu FROM Products ORDER BY Chi_Phi_Dau_Tu DESC --14. Liệt kê top 10% sản phẩm có chi phí đầu tư thấp nhất SELECT TOP 10 PERCENT ProductName, ProductName, UnitsInStock, UnitPrice*UnitsInStock AS Chi_Phi_Dau_Tu FROM Products ORDER BY Chi_Phi_Dau_Tu ASC --15. Sản phẩm đặt hàng nhiều nhất SELECT * FROM Products WHERE UnitsOnOrder = (SELECT MAX(UnitsOnOrder)FROM Products) SELECT TOP 1 * FROM Products ORDER BY UnitsOnOrder DESC --16. Sản phẩm mua lại nhiều nhất SELECT MAX(ReorderLevel) AS MAX_Reorder FROM Products --17. Thông tin những đơn hàng chuyển đến France SELECT * FROM Orders WHERE ShipCountry = 'France' --18. Thông tin những khách hàng ở Mexico SELECT * FROM Customers WHERE Country = 'Mexico' --19. Thông tin những nhân viên lớn hơn 30 năm kinh nghiệm --19.1: Số năm đi làm của từng nv SELECT *, YEAR(GETDATE()) - YEAR(HireDate) AS So_Nam_Kinh_Nghiem FROM Employees --Thong tin nhan vien SELECT LastName+ ' '+FirstName AS HO_VA_TEN, YEAR(GETDATE()) - YEAR(HireDate) AS So_Nam_Kinh_Nghiem FROM Employees WHERE YEAR(GETDATE()) - YEAR(HireDate) > 30 --20. Đưa ra thông tin những sản phẩm có đơn giá >10 SELECT * FROM Products WHERE UnitPrice > 10 --21. Thông tin những sản phẩm có chi phí đầu tư lớn hơn >1000 SELECT *, UnitPrice*UnitsInStock AS Chi_Phi_Dau_Tu FROM Products WHERE UnitPrice*UnitsInStock > 1000 --22. Thông tin những sản phẩm khách hàng đã đặt đã hết hàng trong kho SELECT * FROM Products WHERE UnitsOnOrder >0 AND UnitsInStock <= 0 --23. Thông tin khách hàng có liên hệ với cấp quản lý SELECT * FROM Customers WHERE ContactTitle LIKE N'%manager%' --24. Liệt kê những đơn hàng đã đặt trong tháng 6 năm 1996 SELECT * FROM Orders WHERE YEAR(OrderDate) = 1996 AND MONTH(OrderDate) = 7 --25.Liệt kê những đơn hàng có thời gian giao hàng >7 ngày SELECT *, ShippedDate - OrderDate AS SO_Ngay_giao_hang FROM Orders WHERE ShippedDate - OrderDate > 7 --26. Thông tin những sản phẩm được đóng gói dạng chai và dạng hộp SELECT * FROM Products WHERE QuantityPerUnit LIKE '%BOTTLES' OR QuantityPerUnit LIKE '%BOXES' --27. Thông tin những sản phẩm có tổng số lượng đặt hàng các loại từ 50 đến 100 SELECT *, UnitsOnOrder + ReorderLevel AS Tong_SO FROM Products WHERE UnitsOnOrder + ReorderLevel BETWEEN 50 AND 100 /*Thống kê tổng hợp*/ --28. Thống kê tổng số khách hàng tiềm năng và khách hàng đã mua hàng của công ty --28.1 Khách hàng tiềm năng SELECT COUNT(CustomerID) AS Tong_khach_hang_tiem_nang FROM Customers --28.2 Khách hàng mua hàng SELECT DISTINCT CustomerID /*tránh trùng*/ FROM Orders SELECT COUNT(DISTINCT CustomerID) AS Tong_khach_hang_tiem_nang FROM Orders --29. Thống kê tổng số đơn hàng, số sản phẩm và số mặt hang sản phẩm đã được bán --29.1. Tông số hàng SELECT COUNT(OrderID) AS So_don_hang FROM Orders --29.2: Số sản phẩm mặt hàng SELECT COUNT(ProductID) AS So_mat_hang FROM Products --29.3: Số mặt hàng đã được bán SELECT COUNT(DISTINCT ProductID) AS So_mat_hang_da_ban FROM [Order Details] --30: Mặt hàng được giảm giá >10% SELECT COUNT(DISTINCT ProductID) AS SO_MAT_HANG_DA_BAN FROM [Order Details] WHERE Discount >0.1 --31. Mức giá bán trung bình / 1 sản phẩm của doanh nghiệp SELECT AVG(UnitPrice) AS Gia_Trung_Binh FROM Products --32. Thời gian vận chuyển trung bình của 1 đơn hàng SELECT AVG(DAY(ShippedDate-OrderDate)) AS Thoi_gian_trung_binh FROM Orders --33. Số lượng sản phẩm trung bình trong mỗi đơn hàng SELECT AVG(Quantity) AS So_san_pjham_tb FROM [Order Details] --34. Tổng số lượng sản phẩm đã bán được SELECT SUM(Quantity) AS Tong_so_sp FROM [Order Details] --35. Số lượng sản phẩm bán được cao nhất SELECT MAX(Quantity) AS So_lương_sp_ban_max FROM [Order Details] --36. Số lượng sản phẩm bán được thấp nhất SELECT MIN(Quantity) AS So_lương_sp_ban_max FROM [Order Details] --37. Tổng doanh thu toàn công ty SELECT SUM(UnitPrice*Quantity) AS Tong_doanh_thu FROM [Order Details] --38. Tổng doanh thu, doanh thu trung bình và số lượng đơn hàng SELECT SUM(UnitPrice*Quantity) AS Tong_doanh_thu, AVG(UnitPrice*Quantity) AS Doanh_thu_TB, COUNT(DISTINCT OrderID) AS So_Luong_don_hang FROM [Order Details] --39. Tổng doanh thu, doanh thu trung bình và số lượng đơn hàng của những đơn hàng giảm giá >10% SELECT SUM(UnitPrice*Quantity) AS Tong_doanh_thu, AVG(UnitPrice*Quantity) AS Doanh_thu_TB, COUNT(DISTINCT OrderID) AS So_Luong_don_hang FROM [Order Details] WHERE Discount >0.1 SELECT GETDATE(); SELECT GETDATE() AS [Getdate], CURRENT_TIMESTAMP AS [Current Timestamp], SYSDATETIME() AS [Sysdatetime] GO Thuc hanh --1. Chạy csdl use Northwind --2. Hiển thị dữ liệu các bảng có trong csdl SELECT * FROM Categories SELECT * FROM CustomerCustomerDemo SELECT * FROM CustomerDemographics SELECT * FROM Customers SELECT * FROM Employees SELECT * FROM EmployeeTerritories SELECT * FROM [Order Details] SELECT * FROM Orders SELECT * FROM Products SELECT * FROM Region SELECT * FROM Shippers SELECT * FROM Suppliers SELECT * FROM Territories --3. Hiển thị thông tin lastname của bảng nhân viên SELECT LastName FROM Employees --4. Hiển thị tên, họ và chức danh từng nhân viên SELECT FirstName,LastName, Title FROM Employees --5.Hiển thị toàn bộ thông tin nhân viên theo mặc định và theo thứ tự tùy chỉnh SELECT * FROM Employees --5.1 country SELECT * FROM Employees ORDER BY Country ASC --5.2 city SELECT * FROM Employees ORDER BY City ASC --6.Truy vấn dữ liệu kết quả công thức 2*3 SELECT 2*3 AS KET_QUA --7. Truy vấn thông tin ngày giờ hiện tại SELECT GETDATE() AS Ngay_gio_hien_tai --8.Truy vấn họ và tên bạn SELECT 'LÃ MINH TOÀN' AS HO_TEN --9. Tạo cột họ và tên cho bảng nhân viên SELECT FirstName+ ' '+LastName AS Fullname FROM Employees --10. Truy vấn thông tin khách hàng sắp xếp theo họ từ a-z và ngược lại SELECT * FROM Customers ORDER BY ContactName ASC --11.Truy vấn thông tin khách hàng sắp xếp theo họ từ z-a SELECT * FROM Customers ORDER BY ContactName DESC --12. Truy vấn chi tiết đơn hàng và sắp xếp theo cột tổng thành tiền = số lượng* đơn giá từ cao xuống thâp SELECT *, UnitPrice*Quantity AS Thanh_tien FROM [Order Details] ORDER BY Thanh_tien DESC --13.Đặt tên cột thành tiền trong truy vấn 13 là Tổng số SELECT *, UnitPrice*Quantity AS [Tổng số] FROM [Order Details] ORDER BY [Tổng số] DESC --15.Truy vấn nhân viên sắp xếp theo cột reportTo SELECT * FROM Employees ORDER BY ReportsTo ASC
Leave a Comment