MỞ ĐẦU
ORACLE TABLE
ORACLE QUERY
ORACLE CONDITION
ORACLE CLAUSES
ORACLE OPERATORS
ORACLE JOINS
ORACLE REFERENCE
CÁC CHỦ ĐỀ
BÀI MỚI NHẤT
Dự án mới của mình là gamehow.net, mời anh em ghé thăm và góp ý ạ.

Inner Join trong Oracle

Trong bài này mình sẽ giới thiệu thể loại JOIN đầu tiên đó là INNER JOIN. Đây là loại đơn giản và dễ hiểu nhất và thường được sử dụng nhất khi quản lý database.

1. Inner Join trong Oracle

Trước tiên bạn xem cú pháp đã nhé.

banquyen png
Bài viết này được đăng tại freetuts.net, không được copy dưới mọi hình thức.

SELECT columns  
FROM table1   
INNER JOIN table2  
ON table1.column = table2.column;  

Điều kiện ở ON chính là điều kiện lọc trong quá trình hợp 2 table với nhau, và thường thì đó là so sánh giữa khóa chính của bảng A tới khóa ngoại của bảng B (hoặc ngược lại).

Bạn hãy xem hình dưới đây để hiểu rõ hơn.

inner join1 png

Nếu so sánh với câu truy vấn thông thường thì sẽ tương tự với câu truy vấn sau:

SELECT columns  
FROM table1, table2   
WHERE table1.column = table2.column;  

Nhưng xét về tốc độ thì INNER JOIN sẽ nhanh hơn.

2. Ví dụ về INNER JOIN trong Oracle

Giả sử ta có 2 table đó là "Suppliers" và "Order1".

Suppliers:

inner join2 png
inner join supplier png

Order1:

inner join3 png
inner join order png
Nếu bạn để ý kĩ hơn thì sẽ thấy bảng Order1 sẽ có một khóa ngoại đó là supplier_id và trỏ đến khóa chính supplier_id ở bảng Suppliers.

Bây giờ mình sẽ viết câu truy vấn như sau: Lấy danh sách supplier và đơn hàng của từng suppliers.

SELECT suppliers.supplier_id, suppliers.supplier_name, order1.order_number  
FROM suppliers   
INNER JOIN order1  
ON suppliers.supplier_id = order1.supplier_id;  

Nếu chạy câu truy vấn này thì bạn sẽ thu được kết quả như hình sau:

inner join4 png

3. Lời kết

Như vậy là bạn đã hiểu về INNER JOIN trong Oracle rồi phải không nào? Nếu vẫn chưa hiểu thì bạn hãy làm lại ví dụ thật kĩ nhé.

Mấu chốt của bài này là bạn phải phân biệt và hiểu giữa tích 2 bảng và INNER JOIN giữa hai bảng, điều này sẽ giúp bạn dễ dàng nắm bắt hơn ở các bài tiếp theo đó là LEFT JOIN và RIGHT JOINT, hay còn gọi là Outer Join.

Cùng chuyên mục:

Hàm Hàm ASCII trong Oracle

Hàm Hàm ASCII trong Oracle

Cách sử dụng hàm Hàm ASCII trong 150

Hàm Hàm ASCIISTR trong Oracle

Hàm Hàm ASCIISTR trong Oracle

Cách sử dụng hàm Hàm ASCIISTR trong 150

Hàm Hàm CHR trong Oracle

Hàm Hàm CHR trong Oracle

Cách sử dụng hàm Hàm CHR trong 150

Hàm Hàm COMPOSE trong Oracle

Hàm Hàm COMPOSE trong Oracle

Cách sử dụng hàm Hàm COMPOSE trong 150

Hàm Hàm CONCAT trong Oracle

Hàm Hàm CONCAT trong Oracle

Cách sử dụng hàm Hàm CONCAT trong 150

Hàm Hàm CONVERT trong Oracle

Hàm Hàm CONVERT trong Oracle

Cách sử dụng hàm Hàm CONVERT trong 150

Hàm Hàm DECOMPOSE trong Oracle

Hàm Hàm DECOMPOSE trong Oracle

Cách sử dụng hàm Hàm DECOMPOSE trong 150

Hàm Hàm DUM trong Oracle

Hàm Hàm DUM trong Oracle

Cách sử dụng hàm Hàm DUM trong 150

Hàm Hàm INITCAP trong Oracle

Hàm Hàm INITCAP trong Oracle

Cách sử dụng hàm Hàm INITCAP trong 150

Hàm Hàm INSTR trong Oracle

Hàm Hàm INSTR trong Oracle

Cách sử dụng hàm Hàm INSTR trong 150

Hàm Hàm INSTR2 trong Oracle

Hàm Hàm INSTR2 trong Oracle

Cách sử dụng hàm Hàm INSTR2 trong 150

Hàm Hàm INSTR4 trong Oracle

Hàm Hàm INSTR4 trong Oracle

Cách sử dụng hàm Hàm INSTR4 trong 150

Hàm Hàm INSTRB trong Oracle

Hàm Hàm INSTRB trong Oracle

Cách sử dụng hàm Hàm INSTRB trong 150

Hàm Hàm INSTRC trong Oracle

Hàm Hàm INSTRC trong Oracle

Cách sử dụng hàm Hàm INSTRC trong 150

Hàm Hàm LENGTH trong Oracle

Hàm Hàm LENGTH trong Oracle

Cách sử dụng hàm Hàm LENGTH trong 150

Hàm Hàm LENGTH2 trong Oracle

Hàm Hàm LENGTH2 trong Oracle

Cách sử dụng hàm Hàm LENGTH2 trong 150

Hàm Hàm LOWER trong Oracle

Hàm Hàm LOWER trong Oracle

Cách sử dụng hàm Hàm LOWER trong 150

Hàm Hàm LPAD trong Oracle

Hàm Hàm LPAD trong Oracle

Cách sử dụng hàm Hàm LPAD trong 150

Hàm Hàm LTRIM trong Oracle

Hàm Hàm LTRIM trong Oracle

Cách sử dụng hàm Hàm LTRIM trong 150

Hàm Hàm NCHR trong Oracle

Hàm Hàm NCHR trong Oracle

Cách sử dụng hàm Hàm NCHR trong 150

Top