Phép nối theo chuẩn SQL-

Một phần của tài liệu SQL Server _03 (Trang 71 - 75)

h. Tìm kiếm có phân nhóm các bản ghi kết quả: bảng Orders

3.4.2Phép nối theo chuẩn SQL-

Phép nối theo Chuẩn SQL2 (SQL-92), điều kiện của phép nối không được chỉ định trong mệnh đề WHERE mà được chỉ định ngay trong mệnh đề FROM của câu lệnh.

A.Phép nối trong (inner-join)

Cú pháp:

tên_bảng_1 [INNER] JOIN tên_bảng_2 ON điều_kiện_nối

Ví dụ:

select * from Product p inner join SupplyProduct sp on p.PID =sp.PID

3.4. Phép nối (JOIN)

3.4.2 Phép nối theo chuẩn SQL-92

A.Phép nối trong (inner-join)

SQL92 cho phép biểu diễn phép nối trên nhiều bảng dữ liệu một cách rõ ràng. Thứ tự thực hiện phép nối giữa các bảng được xác định theo nghĩa kết quả của phép nối này được sử dụng trong một phép nối khác.

Ví dụ:

Liệt kê tên các mặt hàng có trong đơn đặt hàng có mã là 1.

select i.ITEMNAME, o.ORDERDATE

from (orders o inner join orderdetail od on o.orderid = od.orderid) inner join items i on od.itemid = i.itemid

where o.orderid = 1

3.4. Phép nối (JOIN)

3.4.2 Phép nối theo chuẩn SQL-92

B.Phép nối ngoài (outer-join)

Cú pháp:

tên_bảng_1 LEFT| RIGHT| FULL [OUTER] JOIN tên_bảng_2

ON điều_kiện_nối

Ví dụ: Giả sử có CSDL gồm 2 bảng như sau:

Yêu cầu: thực hiện phép nối ngoài trái, nối ngoài phải và nối ngoài đầy đủ trên 2 bảng trên, quan sát kết quả.

3.4. Phép nối (JOIN)

3.4.2 Phép nối theo chuẩn SQL-92

B.Phép nối ngoài (outer-join)

Ví dụ: Phép nối ngoài trái:

select *

from faculty f left join class c on f.facultyid = c.facultyid

Phép nối ngoài phải:

select * (adsbygoogle = window.adsbygoogle || []).push({});

from faculty f right join class c on f.facultyid = c.facultyid

Phép nối ngoài đầy đủ:

select *

from faculty f full join class c on f.facultyid = c.facultyid

Chương I: Tổng quan về SQL Server

Một phần của tài liệu SQL Server _03 (Trang 71 - 75)