abstractasp.netasp:LinqDataSourceC#Cabịt.DataCachingGameGarbage collectionGCHTML5interfaceInterviewlam thân quen C#oopvar
Các một số loại JOIN (INNER JOIN, LEFT OUTER JOIN, RIGHT OUTER JOIN, FULL JOIN, CROSS JOIN) trong SQLServer
Mệnh đề Join vào Squốc lộ Server dùng để làm kết nối những bảng, view, sub query lại cùng nhau thông qua các foreign key hoặc những cột có giá trị khớp ứng ở hai bảng, view hoặc các sub query.

Bạn đang xem: Left outer join là gì

Một ví dụ cơ bản cho Việc dùng Join trong SQL Server:Bạn bao gồm nhì table: bảng một là Item (khía cạnh hàng), bảng 2 là table Order (1-1 đặt hàng).

Trong bảng Order chỉ lưu lại lên tiếng Mã hàng hóa, nhưng lại bạn muốn bao gồm tác dụng truy hỏi vấn bắt buộc bao gồm cả tên hàng hóa.Hiện giờ, Join trong SQL sẽ được thực hiện để các bạn nối table Order vào table Item trải qua Mã hàng để đưa tên sản phẩm ra.

Trên đấy là một ví dụ cơ bản tốt nhất nhằm bọn họ hiểu thực chất của JOIN là gì, vào thực tiễn Việc sử dụng JOIN vào SQL vô cùng đa dạng và phong phú cùng đa dạng và phong phú.

Chuẩn bị Trước hết bạn hãy tạo ra hai table vô cùng đơn giản dễ dàng cùng insert vào kia một không nhiều tài liệu nlỗi đoạn script sau:


create table Item
(
MaHang nvarchar(20) primary key,
TenHang nvarchar(200)
)
insert Item(MaHang, TenHang)
values(‘NO1700’, N’Điện thoại Nocơ 1700′),
(‘NO1200’, N’Điện thoại Nokia 1200′),
(‘IPHONE3’, N’Điện thoại Iphone 3′),
(‘IPHONE4’, N’Điện thoại Iphone 4′),
(‘IPHONE5’, N’Điện thoại Iphone 5′),
(‘IPHONE6’, N’Điện thoại Iphone 6′)
go
create table OrderDetail
(
ID int identity primary key,
NgayDatHang datetime,
MaHang nvarchar(20),
SoLuong decimal(19,6) default 0 notnull
)
insert OrderDetail(NgayDatHang, MaHang,SoLuong)
values(‘20140401’, ‘NO1700’, 5),
(‘20140402’, ‘NO1700’, 1),
(‘20140402’, ‘IPHONE3’, 2),
(‘20140401’, ‘IPHONE4’,1), (‘20140401’,‘NO0001’, 1000)

Các các loại JOIN trong SQL Server1. INNER JOIN (viết tắt: JOIN)


Kết quả từ Inner join vào SQL là tập vừa lòng dữ liệu trong số đó cực hiếm dùng để join nhì table với nhau đều phải có ở cả hai bảng, tức là tác dụng là GIAO của nhị tập phù hợp tài liệu. Kết quả được minc họa nlỗi sau:
*

Chạy script sau để xem công dụng của inner join trong Squốc lộ Server:
select t2.MaHang, t1.TenHang, t2.SoLuong
from Item t1 inner joinOrderDetail t2 on t1.MaHang = t2.MaHang
Quý Khách hoàn toàn có thể không buộc phải cần sử dụng INNER JOIN như bên trên nhưng chỉ cần viết tắt JOIN là được:
select t2.MaHang, t1.TenHang, t2.SoLuong
from Item t1 join OrderDetail t2 on t1.MaHang = t2.MaHang
Kết quả:
*

Bốn mã hàng hóa sinh sống cột MaHang đều có vào table Item cùng table OrderDetail.
2. OUTER JOIN vào Squốc lộ Server
a. LEFT OUTER JOIN (viết tắt: LEFT JOIN)
Có thể diễn giải LEFT JOIN vào SQL như sau: “Lấy toàn cục những dòng dữ liệu sinh hoạt table bên trái và mọi dòng tài liệu nghỉ ngơi bảng bên đề xuất CÓ quý hiếm MaHang mãi mãi ngơi nghỉ bảng phía trái.”.
Kết trái minch họa nhỏng hình sau, hiệu quả trả về là hình oval màu xanh:
*

Chạy đoạn script sau:

select t1.MaHang, t1.TenHang,t2.SoLuongfrom Item t1 left joinOrderDetail t2 on t1.MaHang =t2.MaHang

Kết quả trả về:


*

 Một số cái bao gồm SoLuong == null là vì các MaHang này không lâu dài sinh hoạt bảng mặt cần (OrderDetail), nhưng mà bao gồm mãi mãi sống bảng bên trái (Item).


b. RIGHT OUTER JOIN (viết tắt: RIGHT JOIN)

Trái ngược với LEFT JOIN, RIGHT JOIN trong SQL Server mang tổng thể tài liệu của bảng bên bắt buộc với dữ liệu của bảng bên trái nhưng quý hiếm cột JOIN cũng luôn tồn tại vào bảng bên đề xuất.
Minh họa nhỏng sau, hình Oval màu rubi chính là công dụng sẽ trả về:
*

Chạy script sau:
select t2.MaHang, t1.TenHang, t2.SoLuong
from Item t1 right join OrderDetail t2 on t1.MaHang = t2.MaHang
Kết đúng như sau:
c. FULL OUTER JOIN (viết tắt: FULL JOIN)
FULL OUTER JOIN vào SQL Server đó là hiệu quả gộp lại của tất cả nhì table bên trái với mặt đề xuất.

Xem thêm: Thẻ Nfc Là Gì ? Công Dụng Và Cách Sử Dụng Nfc Trên Điện Thoại?


Hình minch họa:
Chạy đoạn script sau:
select t1.MaHang, t1.TenHang, t2.SoLuong
from Item t1 full outer joinOrderDetail t2 on t1.MaHang = t2.MaHang
Kết quả:
Quan liền kề công dụng bên trên rất có thể thấy:
Các dòng bao gồm MaHang = null là do bảng bên yêu cầu (OrderDetail) có mức giá trị tuy thế table phía trái (Item) không tồn tại quý hiếm MaHang tương xứng.
Các loại gồm SoLuong = null là vì các sản phẩm IPHONE5, 6, NO1200 tất cả vào bảng Item nhưng không tồn tại cái nào khớp ứng vào table OrderDetail.
d. CROSS JOIN 
CROSS JOIN vào SQL không nhiều được thực hiện hơn so với những một số loại JOIN sinh hoạt bên trên vày tính ít ý nghĩa của nó, công dụng trả về của CROSS JOIN là đem số chiếc của bảng phía bên trái x số chiếc của bảng bên phải. Ví dụ bảng Item gồm 6 cái, bảng OrderDetail bao gồm 5 mẫu, hiệu quả trả về là 30 loại.
Dữ liệu được nhân lên bởi cđọng tương xứng với 1 mẫu trong Item thì đã nối với cục bộ 5 chiếc trong DetailItem cơ mà ko phải quan tâm cho tiêu chuẩn so sánh như thế nào (không tồn tại mệnh đề ON t1.ColumnA = t2.ColumnB như các phong cách JOIN khác).
Chạy script sau:
select t1.*, t2.*
from Item t1 cross join OrderDetail t2
Kết quả:
Chúng ta sẽ tò mò về những loại JOIN trong Squốc lộ Server, bọn chúng được áp dụng liên tiếp vào truy tìm vấn tài liệu với nhiều cách xử lý không giống. Cho cần bạn cần thực hành thực tế cẩn thận cùng cầm thật rõ cách áp dụng các một số loại Join để khi thao tác làm việc cùng với Squốc lộ Server được nhuần nhuyễn và hiệu quả hơn

Share this:


Like this:


Số lượt ưa thích Đang mua...
Tháng Một 27, 2015Tháng Một 27, 2015 hjwitteveen.comĐiều phía bài xích viết
← %tiêu đề

Trả lời Hủy trả lời


Nhập phản hồi của bạn tại trên đây...

Mời bạn điền báo cáo vào ô dưới đây hoặc kích vào trong 1 biểu tượng nhằm đăng nhập:


Thỏng năng lượng điện tử (bắt buộc) (Địa chỉ của chúng ta được giấu kín)
Tên (bắt buộc)
Trang web

quý khách đã bình luận bằng tài khoản hjwitteveen.com.com(Đăng xuất/Tgiỏi đổi)


Quý Khách đang comment bởi tài khoản Google(Đăng xuất/Ttốt đổi)


quý khách hàng sẽ bình luận bởi thông tin tài khoản Twitter(Đăng xuất/Ttốt đổi)


Quý khách hàng đã bình luận bởi thông tin tài khoản Facebook(Đăng xuất/Ttuyệt đổi)


Hủy bỏ

Connecting lớn %s


Thông báo cho tôi bởi email Khi tất cả bình luận mới.

Thông báo mang lại tôi bằng gmail Lúc tất cả bài xích đăng mới.


Blog tại hjwitteveen.com.com.
Privacy & Cookies: This site uses cookies. By continuing lớn use this website, you agree lớn their use. To find out more, including how khổng lồ control cookies, see here:Cookie Policy
%d bloggers like this:
Bài viết liên quan

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *