Câu Lệnh Select Nhiều Bảng Trong Sql

      61

thường thì, chúng ta có thể mong liệt kê những bản ghi vào một bảng hoặc truy vấn vấn cùng với mọi bản ghi vào một hoặc những bảng không giống nhằm có mặt một bộ những bạn dạng ghi - list tất cả tất cả những phiên bản ghi trường đoản cú nhì hoặc các bảng. Đây là mục tiêu của một truy vấn đúng theo vào Access.

Bạn đang xem: Câu lệnh select nhiều bảng trong sql

Để phát âm tróc nã vấn vừa lòng một biện pháp hiệu quả, trước tiên các bạn sẽ làm cho thân quen với bài toán thi công truy tìm vấn lựa chọn cơ bản trong Access. Để xem thêm lên tiếng về thiết kế truy vấn vấn chọn, hãy xem mục Tạo truy tìm vấn chọn đơn giản.


Lưu ý: Nội dung vào bài viết này được sử dụng với các cơ sở dữ liệu máy tính xách tay Access. quý khách chẳng thể tạo hoặc sử dụng truy vấn đúng theo trong đại lý dữ liệu web Access hoặc áp dụng website Access.


Nghiên cứu ví dụ tróc nã vấn hòa hợp hoạt động

Nếu các bạn không bao giờ tạo ra một truy nã vấn hòa hợp trước đó, chúng ta có thể thấy bổ ích lúc nghiên cứu và phân tích một ví dụ chuyển động vào mẫu mã Northwind Access trước tiên. quý khách hàng có thể tìm tìm mẫu mẫu Northwind bên trên trang ban đầu của Access bằng cách bấm chuột Tệp > Mới hoặc rất có thể trực tiếp sở hữu xuống bạn dạng sao trường đoản cú địa điểm này: Mẫu mẫu mã Northwind.

Sau khi Access msinh hoạt đại lý tài liệu Northwind, hãy làm lơ biểu mẫu hộp thoại singin mở ra đầu tiêu, rồi bung rộng Ngăn uống dẫn phía. Bấm vào phần trên cùng của Ngăn uống dẫn phía, rồi chọn Loại đối tượng để sắp xếp tất cả các đối tượng người dùng đại lý dữ liệu theo loại. Tiếp theo, bung rộng lớn team Truy vấn và các bạn sẽ thấy một tầm nã vấn có tên là trao đổi sản phẩm.

Truy vấn phù hợp rất dễ biệt lập với những đối tượng người dùng truy vấn không giống bởi tất cả hình tượng đặc biệt y hệt như nhì vòng tròn cuộn vào nhau thay mặt cho một cỗ links trường đoản cú nhị bộ:

*

Không y hệt như truy tìm vấn chọn và hành vi thông thường, các bảng không tương quan nhau vào truy tìm vấn phù hợp, tức là không thể sử dụng trình kiến thiết tầm nã vấn đồ họa Access để sản xuất hoặc sửa đổi truy vấn thích hợp. quý khách hàng sẽ chạm mặt sự việc này nếu mở một truy vấn vấn hợp tự Ngăn uống dẫn hướng; Access đã mlàm việc tróc nã vấn với hiển thị kết quả ở dạng coi biểu dữ liệu. Bên bên dưới lệnh Dạng xem bên trên tab Trang đầu, bạn sẽ nhận biết rằng Dạng coi thiết kế sẽ không sẵn cần sử dụng Lúc thao tác làm việc cùng với tầm nã vấn đúng theo. quý khách chỉ rất có thể biến hóa giữa Dạng xem biểu dữ liệu cùng Dạng xem SQL lúc thao tác với tầm nã vấn phù hợp.

Để liên tiếp nghiên cứu về ví dụ truy tìm vấn thích hợp này, hãy nhấn vào Trang đầu > Dạng xem > Dạng coi SQL để thấy cú pháp Squốc lộ khẳng định truy hỏi vấn. Trong hình minc họa này, chúng ta sẽ thêm một trong những giãn biện pháp vượt vào Squốc lộ để chúng ta cũng có thể dễ dãi thấy đa phần khác biệt làm cho một truy tìm vấn phù hợp.



Hãy thuộc phân tích cụ thể cú pháp Squốc lộ của truy hỏi vấn thích hợp này trường đoản cú cơ sở tài liệu Northwind:

SELECT , , , , FROM UNIONSELECT , , , , FROM ORDER BY DESC; Phần đầu tiên và phần sản phẩm tía của câu lệnh SQL này cơ bản là nhị truy tìm vấn lựa chọn. Các truy vấn vấn này truy tìm xuất nhì bộ bạn dạng ghi khác nhau; một từ bảng Đơn mặt hàng thành phầm với một tự bảng Mua sản phẩm.

Phần đồ vật nhì trong câu lệnh Squốc lộ này là trường đoản cú khóa UNION báo cho Access rằng truy tìm vấn này vẫn kết hợp nhị cỗ phiên bản ghi.

Phần ở đầu cuối của câu lệnh Squốc lộ này xác định máy trường đoản cú của những bạn dạng ghi được phối kết hợp bằng cách thực hiện câu lệnh ORDER BY. Trong ví dụ này, Access sẽ xếp thiết bị từ tất cả bản ghi theo trường Ngày đặt hàng theo sản phẩm công nghệ trường đoản cú giảm dần dần.


Lưu ý: Truy vấn hợp luôn luôn làm việc trạng thái chỉ phát âm vào Access; các bạn cần yếu chuyển đổi bất kỳ quý hiếm như thế nào sinh sống dạng coi biểu dữ liệu.


Tạo một tróc nã vấn thích hợp bằng phương pháp tạo nên với kết hợp những truy vấn vấn chọn

Ngay cả lúc có thể chế tạo ra truy tìm vấn đúng theo bằng cách viết trực tiếp cú pháp Squốc lộ ở dạng coi SQL, chúng ta có thể thấy dễ ợt hơn lúc phát hành truy vấn một số trong những phần cùng với truy hỏi vấn chọn. Sau đó, chúng ta cũng có thể xào luộc với dán các phần SQL vào trong 1 tróc nã vấn vừa lòng đang phối kết hợp.

Nếu bạn có nhu cầu bỏ lỡ gọi quá trình cùng cụ vào chính là coi ví dụ, hãy xem mục tiếp sau, Xem ví dụ về kiểu cách dựng truy vấn đúng theo.

Trên tab Tạo, trong nhóm Truy vấn, bấm Thiết kế Truy vấn.

Bnóng đúp vào bảng có những trường nhưng bạn có nhu cầu đưa vào. Thêm bảng vào hành lang cửa số thi công truy vấn vấn.

Trong hành lang cửa số xây cất truy hỏi vấn, hãy bấm lưu ban vào từng trường mà bạn muốn bao hàm. Khi các bạn lựa chọn ngôi trường, hãy bảo vệ rằng chúng ta thêm thuộc số ngôi trường, vào và một vật dụng tự nhưng bạn cấp dưỡng truy vấn chọn không giống. Hết mức độ chăm chú cho hình dạng dữ liệu của ngôi trường với bảo vệ rằng chúng tất cả loại dữ liệu tương thích cùng với ngôi trường vào và một vị trí, trong truy hỏi vấn không giống cơ mà ai đang phối kết hợp. Ví dụ: Nếu truy tìm vấn chọn thứ nhất của doanh nghiệp bao gồm năm trường, ngôi trường thứ nhất đựng tài liệu ngày/thời gian, hãy bảo đảm an toàn rằng từng truy nã vấn chọn khác mà ai đang kết hợp cũng có thể có năm ngôi trường, ngôi trường đầu tiên đựng tài liệu ngày/thời gian v.v.

quý khách có thể tùy ý thêm tiêu chuẩn vào các ngôi trường của mình bằng phương pháp nhập biểu thức tương xứng vào hàng Tiêu chí của lưới trường.

Sau lúc sẽ hoàn toàn việc thêm ngôi trường với tiêu chí ngôi trường, bạn nên chạy truy vấn vấn lựa chọn và xem lại cổng đầu ra của truy tìm vấn đó. Trên tab Thiết kế, vào team Kết quả, bấm vào Chạy.

Chuyển tróc nã vấn quý phái dạng coi Thiết kế.

Lưu tróc nã vấn lựa chọn và để tầm nã vấn mở.

Lặp lại giấy tờ thủ tục này cho từng tróc nã vấn chọn cơ mà bạn muốn phối hợp.

Giờ trên đây, các bạn sẽ tạo thành những truy vấn chọn của chính bản thân mình, đã tới lúc kết hợp các truy vấn vấn ấy. Trong bước này, các bạn tạo truy vấn phù hợp bằng cách xào luộc với dán các câu lệnh SQL.

Trên tab Tạo, vào team Truy vấn, bnóng Thiết kế Truy vấn.

Trên tab Thiết kế, vào đội Truy vấn, bấm chuột Kết hợp. Access ẩn cửa sổ thiết kế tróc nã vấn và hiển thị tab đối tượng người sử dụng dạng xem SQL. Trong thời điểm này, tab đối tượng người dùng dạng coi Squốc lộ là trống.

Hãy click chuột tab cho truy nã vấn lựa chọn đầu tiên nhưng bạn có nhu cầu kết hợp trong truy tìm vấn phù hợp.

Trên tab Trang đầu, nhấn vào Dạng xem > Dạng coi SQL.

Sao chép câu lệnh SQL cho tróc nã vấn lựa chọn. Bnóng vào tab giành riêng cho truy vấn hòa hợp các bạn vẫn bước đầu chế tác trước đó.

Dán câu lệnh Squốc lộ mang lại tróc nã vấn chọn vào tab đối tượng người dùng của dạng coi Squốc lộ của truy vấn hòa hợp.

Xóa bỏ dấu chnóng phẩy (;) nghỉ ngơi cuối câu lệnh SQL của tầm nã vấn chọn.

Nhấn phím Enter nhằm dịch rời nhỏ trỏ xuống một cái, rồi nhập UNION vào trong dòng new.

Hãy click chuột tab đến truy hỏi vấn lựa chọn tiếp theo sau nhưng bạn muốn kết hợp vào tróc nã vấn thích hợp.

Lặp lại tự bước 5 tới bước 10 cho tới khi chúng ta đã sao chép cùng dán tất cả câu lệnh SQL mang lại tầm nã vấn chọn vào vào cửa sổ dạng coi SQL của truy vấn hòa hợp. Không xóa sổ vệt chấm phẩy hoặc nhập bất kể ký từ bỏ gì sau câu lệnh SQL cho truy tìm vấn lựa chọn sau cùng.

Trên tab Thiết kế, vào nhóm Kết quả, bấm Chạy.

Kết trái của truy vấn vấn vừa lòng sẽ lộ diện nghỉ ngơi Dạng coi biểu dữ liệu.

Xem ví dụ về cách dựng truy vấn vấn hợp

Đây là ví dụ chúng ta cũng có thể tạo ra lại trong các đại lý dữ liệu chủng loại Northwind. Truy vấn hợp này tích lũy thương hiệu fan từ bỏ bảng Khách sản phẩm cùng kết phù hợp với tên bạn từ bỏ bảng Nhà hỗ trợ. Nếu bạn muốn làm theo, hãy triển khai công việc này vào bản sao các đại lý dữ liệu chủng loại Northwind của bản thân.



Đây là đầy đủ bước cần thiết để xuất bản ví dụ này:

Tạo nhị tróc nã vấn lựa chọn có tên là Truy vấn_1 cùng Truy vấn_2 với các bảng Khách mặt hàng cùng Nhà cung ứng tương xứng theo máy trường đoản cú làm mối cung cấp tài liệu. Sử dụng ngôi trường Tên với Họ làm quý hiếm hiển thị.

Tạo một truy hỏi vấn bắt đầu mang tên là Truy vấn_3 không có nguồn dữ liệu ban đầu, rồi nhấp chuột lệnh Kết hợp trên tab Thiết kế để lấy tầm nã vấn này vào Truy vấn đúng theo.

Sao chép và dán các câu lệnh SQL từ Truy vấn_1 và Truy vấn_2 vào Truy vấn_3. Đảm bảo vứt bỏ vệt chnóng phẩy quá và thêm vào tự khóa UNION. Sau đó, chúng ta cũng có thể khám nghiệm tác dụng của bản thân mình sinh hoạt dạng xem biểu tài liệu.

Thêm vào mệnh đề xếp sản phẩm công nghệ trường đoản cú vào trong 1 trong những tầm nã vấn, rồi dán câu lệnh ORDER BY vào dạng coi SQL truy hỏi vấn phù hợp. Lưu ý rằng trong Truy vấn_3, truy hỏi vấn hòa hợp, Lúc xếp sản phẩm công nghệ trường đoản cú được đính thêm thêm, trước tiên, các dấu chnóng phẩy, tiếp đến là tên bảng đang bị loại bỏ bỏ khỏi tên ngôi trường.

SQL sau cuối đã kết hợp cùng thu xếp những tên sử dụng cho ví dụ truy tìm vấn đúng theo này là nlỗi sau:

SELECT Customers.Company, Customers., Customers.FROM CustomersUNIONSELECT Suppliers.Company, Suppliers., Suppliers.FROM SuppliersORDER BY , ; Nếu bạn viết cú pháp Squốc lộ một biện pháp hết sức thuận tiện, chúng ta cũng có thể chắc chắn rằng viết trực tiếp câu lệnh Squốc lộ của riêng biệt bản thân mang đến truy hỏi vấn hợp vào dạng xem Squốc lộ. Tuy nhiên, bạn cũng có thể thấy có ích lúc tuân theo phương pháp tiếp cận về coppy và dán Squốc lộ trường đoản cú các đối tượng người sử dụng truy hỏi vấn không giống. Từng truy hỏi vấn rất có thể phức tạp hơn những đối với những ví dụ truy hỏi vấn lựa chọn đơn giản và dễ dàng được áp dụng trên phía trên. Đây hoàn toàn có thể là ưu thế của người sử dụng lúc chế tạo ra và đánh giá từng truy tìm vấn một giải pháp cẩn thận trước lúc phối kết hợp các tróc nã vấn trong tầm nã vấn vừa lòng. Nếu truy nã vấn vừa lòng không chạy, chúng ta cũng có thể kiểm soát và điều chỉnh từng truy vấn vấn biệt lập cho đến khi thành công, rồi chế tạo lại truy nã vấn hòa hợp của bản thân bởi cú pháp đúng.

Xem lại các mục còn lại của bài viết này để đọc thêm các mẹo với bí quyết về kiểu cách áp dụng truy vấn vấn thích hợp.


Trong ví dụ làm việc mục trước đó áp dụng cửa hàng tài liệu Northwind, chỉ kết hợp được tài liệu từ hai bảng. Tuy nhiên, chúng ta có thể phối hợp cha hoặc nhiều bảng rất tiện lợi trong một truy nã vấn hợp. Ví dụ: dựng trên ví dụ trước, chúng ta có thể vẫn muốn hẳn nhiên thương hiệu của nhân viên vào áp ra output truy nã vấn. quý khách có thể thực hiện tác vụ đó bằng cách thêm một tầm nã vấn vật dụng tía cùng kết hợp với câu lệnh SQL trước kia cùng với từ bỏ khóa UNION bổ sung cập nhật như vậy này:

SELECT Customers.Company, Customers., Customers.FROM CustomersUNIONSELECT Suppliers.Company, Suppliers.

Xem thêm: Xem Tử Vi Tuổi Ất Sửu Năm 2017 Tuổi Ất Sửu Nữ Mạng 1985, Xem Tử Vi Tuổi Sửu Năm 2017

, Suppliers.FROM SuppliersUNIONSELECT Employees.Company, Employees., Employees.FROM EmployeesORDER BY , ; lúc chúng ta coi hiệu quả sống dạng coi biểu dữ liệu, tất cả nhân viên sẽ được liệt kê thuộc thương hiệu đơn vị mẫu mã, vốn hoàn toàn có thể không hẳn siêu hữu dụng. Nếu bạn muốn trường đó cho thấy thêm một người là nhân viên cấp dưới nội bộ, trường đoản cú nhà hỗ trợ hoặc trường đoản cú quý khách, chúng ta có thể chuyển vào quý hiếm cố định và thắt chặt cầm cố cho tên đơn vị. Đây là hình ảnh của SQL:

SELECT "Customer" As Employment, Customers., Customers.FROM CustomersUNIONSELECT "Supplier" As Employment, Suppliers., Suppliers.FROM SuppliersUNIONSELECT "In-house" As Employment, Employees., Employees.FROM EmployeesORDER BY , ; Đây là bối cảnh kết quả vẫn xuất hiện nghỉ ngơi dạng coi biểu dữ liệu. Access vẫn hiển thị năm bạn dạng ghi ví dụ này:

Công việc

Họ

Tên

Nội bộ

Freehafer

Nancy

Nội bộ

Giussani

Laura

Nhà cung cấp

Glasson

Stuart

Khách hàng

Goldschmidt

Daniel

Khách hàng

Gratacos Solsona

Antonio

Truy vấn trên rất có thể giảm được thậm chí nhiều hơn vì chưng Access chỉ gọi tên của trường cổng output từ tầm nã vấn thứ nhất trong truy vấn đúng theo. Tại phía trên, các bạn thấy chúng ta vẫn vứt bỏ đầu thoát ra khỏi những mục tróc nã vấn sản phẩm nhì với sản phẩm công nghệ ba:

SELECT "Customer" As Employment, , FROM CustomersUNIONSELECT "Supplier", , FROM SuppliersUNIONSELECT "In-house", , FROM EmployeesORDER BY , ;
Trong tróc nã vấn đúng theo Access, chỉ cho phép xếp lắp thêm từ bỏ một đợt nhưng từng tầm nã vấn rất có thể được lọc đơn nhất. Việc dựng trên truy tìm vấn hợp của mục trước, dưới đấy là ví dụ về địa điểm họ vẫn lọc từng truy vấn vấn bằng phương pháp thêm mệnh đề WHERE.

SELECT "Customer" As Employment, Customers., Customers.FROM CustomersWHERE = "UT"UNIONSELECT "Supplier", , FROM SuppliersWHERE = "Sales Manager"UNIONSELECT "In-house", Employees., Employees.FROM EmployeesWHERE City = "Seattle"ORDER BY , ; Chuyển trở qua dạng coi biểu dữ liệu và các bạn sẽ thấy hiệu quả tất cả dạng nhỏng sau:

Công việc

Họ

Tên

Nhà cung cấp

Andersen

Elizabeth A.

Nội bộ

Freehafer

Nancy

Khách hàng

Hasselberg

Jonas

Nội bộ

Hellung-Larsen

Anne

Nhà cung cấp

Hernandez-Echevarria

Amaya

Khách hàng

Mortensen

Sven

Nhà cung cấp

Sandberg

Mikael

Nhà cung cấp

Sousa

Luis

Nội bộ

Thorpe

Steven

Nhà cung cấp

Weiler

Cornelia

Nội bộ

Zare

Robert


Nếu những truy tìm vấn đề xuất phối hợp thường rất khác nhau, chúng ta có thể gặp mặt nên một tình huống là trường Áp sạc ra phải phối hợp tài liệu của những các loại tài liệu khác nhau. Nếu vậy, truy tìm vấn thích hợp phần lớn hay vẫn trả về kết quả dưới dạng các loại tài liệu văn phiên bản vị một số loại tài liệu có thể giữ lại cả vnạp năng lượng phiên bản cùng số.

Để tò mò phương pháp tróc nã vấn này hoạt động, họ vẫn áp dụng truy tìm vấn đúng theo Giao dịch thành phầm vào các đại lý dữ liệu chủng loại Northwind. Mngơi nghỉ các đại lý tài liệu mẫu mã đó, rồi mlàm việc truy vấn vấn giao hoán sản phẩm nghỉ ngơi dạng xem biểu dữ liệu. Mười phiên bản ghi ở đầu cuối nên tương tự nhỏng đầu ra này:

ID Sản phẩm

Ngày đặt hàng

Tên công ty

Giao dịch

Số lượng

77

Nhà hỗ trợ B

Mua

60

80

Nhà cung ứng D

Mua

75

81

Nhà cung cấp A

Mua

125

81

Nhà cung ứng A

Mua

200

7

Cửa Hàng chúng tôi D

Bán

10

51

cửa hàng D

Bán

10

80

Shop chúng tôi D

Bán

10

34

Công ty AA

Bán

100

80

Cửa Hàng chúng tôi AA

Bán

25

Hãy mang định rằng bạn muốn trường Số lượng phân chia tách vào hai - Mua cùng Bán. Cũng hãy giả định rằng bạn có nhu cầu có mức giá trị số ko cố định mang đến trường không tồn tại quý giá. Đây là bối cảnh của SQL so với truy vấn vấn hợp này:

SELECT , , , , 0 As Buy, As SellFROM UNIONSELECT , , , , As Buy, 0 As SellFROM ORDER BY DESC;  Nếu các bạn đổi khác sang trọng dạng coi biểu tài liệu, bạn sẽ thấy mười phiên bản ghi ở đầu cuối giờ đây được hiển thị hệt như sau:

ID Sản phẩm

Ngày đặt hàng

Tên công ty

Giao dịch

Mua

Bán

74

Nhà cung ứng B

Mua

31

0

77

Nhà hỗ trợ B

Mua

60

0

80

Nhà hỗ trợ D

Mua

75

0

81

Nhà cung ứng A

Mua

125

0

81

Nhà cung ứng A

Mua

200

0

7

shop D

Bán

0

10

51

shop D

Bán

0

10

80

Shop chúng tôi D

Bán

0

10

34

chúng tôi AA

Bán

0

100

80

Công ty AA

Bán

0

25

Tiếp tục ví dụ này, điều gì đã xẩy ra trường hợp bạn muốn các ngôi trường tất cả số ko là trống? Quý Khách hoàn toàn có thể sửa đổi Squốc lộ để không hiển thị gì vậy do số không bằng phương pháp thêm từ khóa Null giống như sau:

SELECT , , , , Null As Buy, As SellFROM UNIONSELECT , , , , As Buy, Null As SellFROM ORDER BY DESC; Tuy nhiên, Khi bạn có thể quan cạnh bên Việc thay đổi thanh lịch dạng xem biểu tài liệu, lúc này bạn đã có một tác dụng không hề mong muốn. Trong cột Mua, mỗi trường hồ hết bị xóa:

ID Sản phẩm

Ngày đặt hàng

Tên công ty

Giao dịch

Mua

Bán

74

Nhà hỗ trợ B

Mua

77

Nhà cung cấp B

Mua

80

Nhà cung ứng D

Mua

81

Nhà cung cấp A

Mua

81

Nhà cung cấp A

Mua

7

cửa hàng D

Bán

10

51

Shop chúng tôi D

Bán

10

80

Cửa Hàng chúng tôi D

Bán

10

34

Cửa Hàng chúng tôi AA

Bán

100

80

chúng tôi AA

Bán

25

Lý vì chưng nhưng vấn đề đó xảy ra là vì Access xác định loại dữ liệu của các trường trường đoản cú tróc nã vấn trước tiên. Trong ví dụ này, Null chưa phải là một vài.

Vì vậy, điều gì xảy ra nếu bạn tìm bí quyết và chèn một chuỗi trống mang lại quý giá của những trường trống? Squốc lộ đối với nỗ lực cố gắng này hoàn toàn có thể gồm dạng nlỗi sau:

SELECT , , , , "" As Buy, As SellFROM UNIONSELECT , , , , As Buy, "" As SellFROM ORDER BY DESC; Khi các bạn biến hóa lịch sự dạng coi biểu dữ liệu, các bạn sẽ thấy rằng Access truy hỏi xuất những quý giá Mua tuy vậy sẽ chuyển đổi những quý hiếm này thành vnạp năng lượng bản. quý khách hoàn toàn có thể biết đấy là quý giá vnạp năng lượng bạn dạng vị được căn trái làm việc dạng coi biểu tài liệu. Chuỗi trống trong tróc nã vấn trước tiên không phải là số là vì các bạn thấy những kết quả này. quý khách hàng cũng trở nên nhận thấy rằng những cực hiếm Bán cũng rất được thay đổi thành văn bản vày những bản ghi cài tất cả cất chuỗi trống.

ID Sản phẩm

Ngày đặt hàng

Tên công ty

Giao dịch

Mua

Bán

74

Nhà hỗ trợ B

Mua

31

77

Nhà cung ứng B

Mua

60

80

Nhà hỗ trợ D

Mua

75

81

Nhà cung cấp A

Mua

125

81

Nhà cung cấp A

Mua

200

7

Cửa Hàng chúng tôi D

Bán

10

51

chúng tôi D

Bán

10

80

cửa hàng D

Bán

10

34

chúng tôi AA

Bán

100

80

Công ty AA

Bán

25

Vật thì chúng ta xử lý vấn đề này như vậy nào?

Giải pháp là buộc truy tìm vấn có mức giá trị trường là một số. Điều kia có thể được thực hiện bởi biểu thức:

IIf(False, 0, Null) Điều kiện để bình chọn, False, sẽ không lúc nào là True, cho nên vì thế biểu thức đang luôn trả về Null tuy vậy Access vẫn đánh Chi phí nhì tùy lựa chọn Áp sạc ra với ra quyết định cổng output là số hoặc Null.

Đây là cách chúng ta cũng có thể áp dụng biểu thức này vào ví dụ hoạt động vui chơi của mình:

SELECT , , , , IIf(False, 0, Null) As Buy, As SellFROM UNIONSELECT , , , , As Buy, Null As SellFROM ORDER BY DESC; Lưu ý rằng ko quan trọng sửa đổi truy nã vấn trang bị nhị.

Nếu chúng ta biến đổi sang trọng dạng xem biểu dữ liệu, hôm nay các bạn sẽ thấy hiệu quả nhưng bọn họ mong muốn:

ID Sản phẩm

Ngày đặt hàng

Tên công ty

Giao dịch

Mua

Bán

74

Nhà cung cấp B

Mua

31

77

Nhà cung ứng B

Mua

60

80

Nhà cung ứng D

Mua

75

81

Nhà hỗ trợ A

Mua

125

81

Nhà cung cấp A

Mua

200

7

Cửa Hàng chúng tôi D

Bán

10

51

cửa hàng D

Bán

10

80

cửa hàng D

Bán

10

34

Công ty AA

Bán

100

80

công ty chúng tôi AA

Bán

25

Phương pháp sửa chữa nhằm dành được và một kết quả là thêm những truy vấn vấn vào tróc nã vấn hợp với một truy vấn khác:

SELECT 0 As , Date() As , "" As , "" As , 0 As Buy, 0 As SellFROM WHERE False Đối cùng với từng trường, Access trả về các quý giá cố định và thắt chặt của các loại dữ liệu chúng ta khẳng định. Tất nhiên, các bạn không muốn áp ra output của truy tìm vấn này gây khó dễ đến công dụng, vì vậy bí quyết nhằm rời vấn đề này là chế tạo mệnh đề WHERE thành False:

WHERE False Đây là một trong những bí mật bé dại vì chưng tác dụng luôn là false cùng sau đó truy nã vấn ko trả về bất kỳ quý giá làm sao. Kết phù hợp câu lệnh này với SQL hiện tất cả cùng chúng ta đạt được câu lệnh được xong nlỗi sau:

SELECT 0 As , Date() As , "" As , "" As , 0 As Buy, 0 As SellFROM WHERE FalseUNIONSELECT , , , , Null As Buy, As SellFROM UNIONSELECT , , , , As Buy, Null As SellFROM ORDER BY DESC;
Lưu ý: Truy vấn đã phối kết hợp ở chỗ này trong ví dụ này áp dụng cửa hàng tài liệu Northwind trả về 100 bản ghi, trong những khi nhì tróc nã vấn cô đơn trả về 58 và 43 bản ghi gồm tổng cộng là 101 phiên bản ghi. Ngulặng nhân về sự ko thống độc nhất này là do nhì bạn dạng ghi không hẳn là tuyệt nhất. Hãy xem mục, Làm việc với các bản ghi lẻ tẻ trong truy vấn đúng theo bằng UNION ALL, nhằm mày mò phương pháp để giải quyết kịch bạn dạng này bằng cách áp dụng UNION ALL.


Một trường thích hợp đặc biệt về truy vấn vấn phù hợp là phối kết hợp một bộ các bạn dạng ghi bao gồm một bạn dạng ghi cất tổng của một hoặc những trường.

Đây là 1 trong ví dụ khác mà lại bạn cũng có thể tạo trong cơ sở dữ liệu mẫu Northwind nhằm minc họa cách dấn tổng vào truy vấn phù hợp.

Tạo một truy vấn vấn đơn giản new giúp xem phần tải bia (ID Sản phẩm=34 vào cửa hàng dữ liệu Northwind) bởi cú pháp SQL sau đây:

SELECT ., .QuantityFROM WHERE (((.)=34))ORDER BY .; Chuyển lật qua dạng xem biểu dữ liệu và bạn sẽ thấy tư thành phầm mua:

Ngày nhận

Số lượng

100

60

50

300

Để đã đạt được tổng, tạo thành một tầm nã vấn tổng thích hợp dễ dàng bởi Squốc lộ sau đây:

SELECT Max(), Sum() AS SumOfQuantityFROM WHERE (((.)=34)) Chuyển đổi qua dạng coi biểu dữ liệu cùng các bạn sẽ chỉ thấy một bản ghi:

Ngày nhận_tối_đa

Tổng_số_lượng

510

Kết hòa hợp nhì truy tìm vấn này vào một truy nã vấn đúng theo để lẹo thêm bạn dạng ghi bao gồm con số tổng vào những bạn dạng ghi mua:

SELECT ., .QuantityFROM WHERE (((.)=34))UNIONSELECT Max(), Sum() AS SumOfQuantityFROM WHERE (((.)=34))ORDER BY .; Chuyển trở qua dạng xem biểu tài liệu cùng bạn sẽ thấy tứ thành phầm download tất cả tổng của từng sản phẩm dĩ nhiên là một bản ghi tính tổng thể lượng:

Ngày nhận

Số lượng

60

100

50

300

510

Bài viết đó đề cập đến rất nhiều thông báo cơ phiên bản về kiểu cách thêm tổng vào một truy tìm vấn hòa hợp. Quý Khách rất có thể vẫn muốn đưa vào những cực hiếm cố định và thắt chặt trong cả nhì truy hỏi vấn ví dụ như “Chi tiết” với “Tổng” để phân bóc tách trực quan phiên bản ghi tổng trường đoản cú những bản ghi không giống. Quý khách hàng rất có thể xem xét lại những cực hiếm thắt chặt và cố định đang thực hiện trong mục Kết hòa hợp cha hoặc các bảng hoặc truy hỏi vấn vào tróc nã vấn đúng theo.


Các truy vấn vừa lòng trong Access theo khoác định chỉ bao gồm những phiên bản ghi riêng biệt. Nhưng điều gì đang xẩy ra giả dụ bạn có nhu cầu bao hàm tất cả bạn dạng ghi? Một ví dụ không giống rất có thể hữu dụng tại đây.

Trong mục trước kia, chúng tôi đã chỉ cho chính mình cách sinh sản tổng trong truy nã vấn đúng theo. Sửa đổi truy tìm vấn đúng theo SQL đó để có ID Sản phẩm= 48:

SELECT ., .QuantityFROM WHERE (((.)=48))UNIONSELECT Max(), Sum() AS SumOfQuantityFROM WHERE (((.)=48))ORDER BY .; Chuyển đảo sang dạng coi biểu dữ liệu với bạn sẽ thấy hiệu quả hơi sai khác một chút:

Ngày nhận

Số lượng

100

200

Dĩ nhiên, một bạn dạng ghi sẽ không còn trả về hai lần con số tổng.

Lý bởi chúng ta thấy kết quả này là vì vào một ngày và một lượng sôcôla đã làm được phân phối nhì lần - như được lưu lại vào bảng Chi máu 1-1 đặt đơn hàng. Đây là hiệu quả truy tìm vấn lựa chọn đơn giản hiển thị cả nhị bản ghi trong đại lý tài liệu mẫu Northwind:

ID Đơn đặt hàng

Product

Quantity

100

Northwind Traders Chocolate

100

92

Northwind Traders Chocolate

100

Trong tầm nã vấn đúng theo được ghi chú trước, bạn có thể thấy rằng ngôi trường ID Đơn hàng ko được đưa vào cùng hai trường không tạo thành thành hai bản ghi riêng biệt.

Nếu bạn muốn chuyển toàn bộ bản ghi vào, hãy thực hiện UNION ALL gắng vì UNION vào Squốc lộ của chính mình. Điều này đa phần có thể sẽ gây tác động về vấn đề thu xếp tác dụng, bởi vậy chúng ta cũng có thể có muốn gửi vào mệnh đề ORDER BY nhằm khẳng định vật dụng trường đoản cú bố trí. Đây là phương pháp dựng SQL vẫn sửa đổi tự ví dụ trước đó:

SELECT ., Null As , .QuantityFROM WHERE (((.)=48))UNION ALLSELECT Max(), "Total" As , Sum() AS SumOfQuantityFROM WHERE (((.)=48))ORDER BY ; Chuyển trở qua dạng coi biểu tài liệu và các bạn sẽ thấy tất cả những chi tiết bên cạnh tổng dưới dạng bạn dạng ghi cuối cùng:

Ngày nhận

Tổng

Số lượng

100

100

Tổng cộng

200


Mức áp dụng thịnh hành về truy hỏi vấn phù hợp nhập vai trò là nguồn phiên bản ghi đến tinh chỉnh hộp tổng hợp bên trên biểu mẫu mã. quý khách hàng rất có thể thực hiện hộp tổng hợp kia nhằm chọn 1 quý giá đề nghị thanh lọc những bản ghi của biểu chủng loại. Ví dụ: thanh lọc bạn dạng ghi nhân viên theo thị trấn.

Để xem giải pháp hoạt động, đó là một ví dụ khác cơ mà chúng ta cũng có thể tạo ra vào cơ sở tài liệu mẫu mã Northwind để minch họa kịch bạn dạng này.

Tạo truy nã vấn chọn dễ dàng và đơn giản bằng cú pháp Squốc lộ này:

SELECT Employees.City, Employees.City AS FilterFROM Employees; Chuyển lật sang dạng coi biểu dữ liệu và bạn sẽ thấy tác dụng như sau:

Thành phố

Sở lọc

Seattle

Seattle

Bellevue

Bellevue

Redmond

Redmond

Kirkland

Kirkland

Seattle

Seattle

Redmond

Redmond

Seattle

Seattle

Redmond

Redmond

Seattle

Seattle

Đang xem các hiệu quả nhưng mà chúng ta cũng có thể không thấy những giá trị. Bung rộng truy hỏi vấn tổng thể với biến đổi thành tróc nã vấn thích hợp bằng cách sử dụng SQL sau đây:

SELECT Employees.City, Employees.City AS FilterFROM EmployeesUNIONSELECT "", "*" AS FilterFROM EmployeesORDER BY City; Chuyển lật qua dạng coi biểu tài liệu cùng các bạn sẽ thấy công dụng nlỗi sau:

Thành phố

Bộ lọc

*

Bellevue

Bellevue

Kirkland

Kirkland

Redmond

Redmond

Seattle

Seattle

Access đang tiến hành kết hợp chín bạn dạng ghi, được hiển thị trước đó, có những quý hiếm cố định và thắt chặt là và "*".

Vì mệnh đề phối hợp này không cất UNION ALL, Access vẫn chỉ trả về các bạn dạng ghi hiếm hoi Tức là từng thành thị được trả về duy nhất lần cùng với những cực hiếm cố định và thắt chặt như là nhau.

Lúc này, bạn có một truy tìm vấn thích hợp vẫn xong xuôi hiển thị mỗi tên đô thị chỉ một lần, với một tùy chọn đang chọn tất cả các thành phố một bí quyết hiệu quả, chúng ta cũng có thể thực hiện truy tìm vấn này có tác dụng nguồn bản ghi mang đến hộp tổng hợp bên trên biểu chủng loại. Sử dụng ví dụ rõ ràng này làm cho quy mô, bạn có thể tạo thành tinh chỉnh và điều khiển hộp tổng hợp trên biểu chủng loại, đặt truy vấn này có tác dụng nguồn phiên bản ghi, đặt thuộc tính Column Width của Cột cỗ lọc thành 0 (số không) để ẩn một cách trực quan tiền, rồi đặt trực thuộc tính Bound Column thành 1 để chỉ báo các chỉ mục của cột thiết bị nhì. Trong nằm trong tính Filter của phiên bản thân biểu mẫu, bạn có thể tiếp tế mã ví dụ như mã dưới đây để kích hoạt cỗ thanh lọc biểu mẫu mã bởi quý hiếm của không ít gì đã có được lựa chọn vào tinh chỉnh hộp tổ hợp:

Me.Filter = " Like "" và Me!.Value và """Me.FilterOn = True Sau đó, người tiêu dùng của biểu mẫu có thể lọc các bạn dạng ghi biểu mẫu mã thành tên thành thị ví dụ hoặc chọn nhằm liệt kê tất cả phiên bản ghi cho tất cả tỉnh thành.

tinh dầu vape, pod 1 lần