Polecenia SQL


Łączy SQL

Łączy SQL są używane do odnoszą się informacje w różnych tabelach. Warunkiem Dołącz jest częścią kwerendy SQL, która pobiera wiersze z dwóch lub więcej tabel. Dołącz do programu SQL warunek jest stosowany w SQL Klauzula WHERE SELECT, UPDATE, DELETE oświadczenia.

Łączy w SQL

Các Składnia SQL do łączenia dwóch tabel jest:

SELECT col1, col2, col3...
FROM table_name1, table_name2
WHERE table_name1.col2 = table_name2.col1;

Jeśli sql dołączyć warunek zostanie pominięta lub jeżeli jest ona nieważna sprzężenia Operacja spowoduje iloczyn kartezjański. Iloczyn zwraca liczbę wierszy równą produktu wszystkich rzędach wszystkie tabele są połączone. Na przykład, jeżeli pierwszy stół ma 20 rzędów, a drugi stół ma 10 wierszy, wynikiem będzie 20 * 10 lub 200 wierszy. Zapytanie to zajmuje dużo czasu, aby wykonać.

Łączy Przykład SQL

Pozwala używać dwóch tabelach poniżej wyjaśnić SQL dołączyć warunki.

tabeli bazy danych "produkt";

product_id product_name supplier_name unit_price
100 Camera Nikon 300
101 Television Onida 100
102 Refrigerator Vediocon 150
103 Ipod Apple 75
104 Mobile Nokia 50

tabeli bazy danych "order_items";

order_id product_id total_units customer
5100 104 30 Infosys
5101 102 5 Satyam
5102 103 25 Wipro
5103 101 10 TCS

SQL dołącza można podzielić na Equi przyłączyć i Non Equi przyłączyć.

1) SQL Equi łączy

Jest to prosty sql dołączyć warunek, który używa znaku równości jako operator porównania. Dwa rodzaje czys złączeń są SQL sprzężenie zewnętrzne i SQL INNER JOIN.

Na przykład: Można uzyskać informacje na temat klienta, który zakupionego produktu oraz ilość produktu.

2) SQL dla equi łączy

Jest to SQL dołączyć warunek, który sprawia, że ​​korzystanie z niektórych operator porównania inny niż znak równości jak>, <,>=, <=

1) SQL Equi przyłącza:

Equi-join dodatkowo podzielić na dwie kategorie:
a) SQL Inner Join
b) SQL Outer Join

a) SQL Inner Join:

Wszystkie wiersze zwrócone przez zapytanie SQL spełniają warunek określony SQL przyłączyć.

SQL Inner Join Przykład:

Jeśli chcesz, aby wyświetlić informacje o produkcie dla każdego zamówienia zapytanie zostanie podane poniżej. Ponieważ jesteś pobieranie danych z dwóch tabel, trzeba wskazać wspólny kolumnę pomiędzy tymi dwiema tabelami, co stanowi product_id.

Kwerenda dla tego typu SQL łączy byłby podobny,

SELECT order_id, product_name, unit_price, supplier_name, total_units
FROM product, order_items
WHERE order_items.product_id = product.product_id;

Ten musi być określany nazwą tabeli w stanie dołączenia, ponieważ product_id jest kolumną w obu tablicach i musi mieć możliwość identyfikacji. Pozwala to uniknąć niejasności w stosowaniu kolumn w zapytania SELECT.

Liczbę warunków przyłączenia jest (n-1), jeśli istnieją więcej niż dwie tabele połączone w zapytaniu, gdzie "n" jest liczbą tabel zaangażowanych. Rządy muszą być spełnione, aby uniknąć iloczyn kartezjański.

Możemy również użyć aliasów do odwoływania się do nazwy kolumny, to powyższe zapytanie będzie jak,

SELECT o.order_id, p.product_name, p.unit_price, p.supplier_name, o.total_units
FROM product p, order_items o
WHERE o.product_id = p.product_id;

b) SQL Outer Join:

sql Ten warunek łączyć zwraca wszystkie wiersze z obu tabel, które spełniają warunki złączenia wraz z wierszy, które nie spełniają warunku przyłączenia jednej z tabel. SQL sprzężenia zewnętrznego operatora w Oracle jest (+) i służy z jednej strony tylko pod warunkiem dołączenia.

Składnia różni się dla różnych implementacji RDBMS. Niewielu z nich reprezentują dołączyć warunki jak "SQL opuścił sprzężenia zewnętrznego", "sql prawe sprzężenie zewnętrzne".

Jeśli chcesz wyświetlić wszystkie dane produktu wraz z danymi pozycji kolejności, wartości null wyświetlanych przedmiotów zamówienia, jeżeli produkt nie ma elementu zamówienia, zapytania SQL dla sprzężenia zewnętrznego będzie, jak pokazano poniżej:

SELECT p.product_id, p.product_name, o.order_id, o.total_units
FROM order_items o, product p
WHERE o.product_id (+) = p.product_id;

Wyjście będzie jak,

product_id product_name order_id total_units
------------- ------------- ------------- -------------
100 Camera
101 Television 5103 10
102 Refrigerator 5101 5
103 Ipod 5102 25
104 Mobile 5100 30

UWAGA: Jeżeli operator (+) stosuje się po lewej stronie stanu przyłączenia jest równoważne do lewej zewnętrznej przyłączenia. W przypadku stosowania z prawej strony stanu przyłączenia jest równoważne do prawej zewnętrznej przyłączyć.

SQL Własna Zarejestrowany:

Self Dołącz jest rodzajem sql przyłączyć który służy do przyłączenia się do stolika do siebie, szczególnie gdy tabela ma klucz obcy, która odwołuje swój własny klucz podstawowy. Konieczne jest, aby upewnić się, że dołączyć oświadczenie określa alias dla obu kopii tabeli, aby uniknąć niejasności kolumny.

Poniższe zapytanie jest przykładem ja przyłączyć,

SELECT a.sales_person_id, a.name, a.manager_id, b.sales_person_id, b.name
FROM sales_person a, sales_person b
WHERE a.manager_id = b.sales_person_id;

2) SQL dla Equi Zarejestrowany:

A Non Equi Dołącz jest SQL Dołącz którego stan ma swoją siedzibę przy użyciu wszystkich operatorów porównania wyjątkiem równości (=) operator. Jak> =, <=, <,>

SQL dla Equi Dołącz Przykład:

Jeśli chcesz znaleźć nazwiska uczniów, którzy nie studiują albo ekonomię, zapytanie SQL będzie jak (umożliwia wykorzystanie student_details tabeli zdefiniowano wcześniej).

SELECT first_name, last_name, subject
FROM student_details
WHERE subject != 'Economics'

Wyjście będzie coś w stylu:

first_name last_name subject
------------- ------------- -------------
Anajali Bhagwat Maths
Shekar Gowda Maths
Rahul Sharma Science
Stephen Fleming Science

Dodaj stronę do ulubionych