Xem tài liệu đính kèm VBA for SQL references hoặc VBA for connection with SQL
SELECT SYNTAX
Bước 1: Đặt tên cho các bảng tính trong từng sheets phía dưới và tên các trường dữ liệu
Bước 2: Viết câu lệnh SQL theo cú pháp Select… Left Join. Ta cũng có thể kết hợp với Select… Inner Join
SELECT [Orders].[Order ID], [Orders].[Customer Id],[Orders].[Order Date],[Customers].[Last Name], [Customers].[First Name],[Orders].[Shipping Fee],[HangHoa].[Shipper ID], [HangHoa].[TEN_HH] ON [Orders].[Customer ID] = [Customers].[ID]) |
TỪ KHÓA SELECT: CHỌN CÁC TRƯỜNG DỮ LIỆU [Order ID], [Customer Id], [Order Date], [Shipping Fee] trong bảng [ORDERS] và các trường [Last Name], [First Name] trong bảng [CUSTOMERS] và trường [Shipper ID], [TEN_HH] trong bảng [HangHoa]
TỪ KHÓA FROM: LẤY THÔNG TIN TỪ BẢNG [ORDERS] (BẢNG 1)
TỪ KHÓA LEFT JOIN: KẾT HỢP LẤY THÔNG TIN TỪ BẢNG [CUSTOMERS] (BẢNG 2)
TỪ KHÓA INNER JOIN: KẾT HỢP LẤY THÔNG TIN TỪ BẢNG [HangHoa] (BẢNG 3)
TỪ KHÓA ON: BẢNG 1 VÀ BẢNG 2 CÓ CHUNG TRƯỜNG [Customer ID], BẢNG 1 VÀ BẢNG 3 CÓ CHUNG TRƯỜNG [Shipper ID]
Bước 3: Thực hiện câu lệnh SQL để hiện thông tin về Mã khách hàng, Ngày đặt hàng và phí vận chuyển (trong bảng [Orders]), lấy Tên gọi và đệm trong bảng [Customers]) và mã nhân viên giao hàng, Tên Hàng hóa trong bảng [HangHoa]. Ở đây bảng [Orders] và [Customers] sẽ là kết nối Left Join nghĩa là một số thông tin không có trong bảng Customers sẽ trả về 0, còn bảng [Orders] vẫn lấy hết thông tin. Còn bảng [Orders] và bảng [HangHoa] là kết nối Inner Join nên cả hai bảng chỉ lấy phần giao nhau nghĩa là thông tin phải bắt buộc có trong 2 bảng mới lấy ra kết quả. Và đây là Kết quả:
Khóa học liên quan