Polecenia SQL


SQL przyłącza

SQL Przyłącza są stosowane do powiązania informacji w różnych tabelach. Stan Zarejestrowany jest częścią zapytania SQL, która pobiera wiersze z dwóch lub więcej tabel. SQL Dołącz warunek jest stosowany w SQL Klauzula WHERE z select, update, delete oświadczenia.

Łączy w SQL

The 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 stan sql dołączyć pominięto lub jeśli jest ona nieważna dołączyć 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 rzędów, wynikiem będzie 20 * 10 lub 200 wierszy. Zapytanie to zajmuje dużo czasu na wykonanie.

Przykład SQL Łączy

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

Tabeli bazy danych "produktów";

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 dołączyć i dla Equi dołączyć.

1) SQL Equi łączy

To proste sql dołączyć warunek, który używa znaku równości jako operator porównania. Dwa rodzaje sprzężeń są czys dołączyć zewnętrzny SQL i SQL INNER JOIN.

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

2) dołącza do SQL dla urządze

To jest 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 Dzieli się na dwie kategorie:
) SQL Inner Join
b) SQL Outer Dołącz

) 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ż są pobieranie danych z dwóch tabel, należy wskazać wspólny kolumnę między tymi dwiema tabelami, co jest produkt_id.

Zapytanie dla tego typu sql dołącza będzie jak,

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

Kolumny należy odwoływać nazwą tablicy w stanie przyłączyć ponieważ product_id jest kolumną w obu tablicach i musi mieć możliwość identyfikacji. Pozwala to uniknąć niejasności w stosowaniu kolumn w instrukcji SQL SELECT.

Ilość przyłączenia jest (n-1), w przypadku więcej niż dwóch tabel połączone w zapytaniu, gdzie "n" jest liczba tablic stron. Zasada musi być prawdziwe, aby uniknąć produkt kartezjański.

Możemy również użyć aliasów odwołać nazwę kolumny, a następnie 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 To dołączyć stan zwraca wszystkie wiersze z obu tabel, które spełniają warunek łączyć wraz z wierszy, które nie spełniają warunków przyłączenia z jednej z tabel. Sql sprzężenia zewnętrznego operatora w Oracle jest (+) i jest używany na jednej stronie tylko warunkiem przystąpienia.

Składnia różni się dla różnych implementacji bazy danych. Niewielu z nich stanowią dołączyć warunki jak "sql LEFT OUTER JOIN", "sql prawe sprzężenie zewnętrzne".

Jeśli chcesz, aby wyświetlić wszystkie dane produktu wraz z danymi pozycji zamówień, z wartości null wyświetlanych przedmiotów zamówienia, jeżeli produkt nie ma elementu zamówienia, zapytania SQL do sprzężenia zewnętrznego będzie tak 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śli operator (+) stosuje się po lewej stronie stanu przyłączenia jest równoważne lewej sprzężenia zewnętrznego. W przypadku stosowania po prawej stronie stanie dołączenia jest równoważne prawa zewnętrzna łączenia.

SQL Własna Dołącz:

Własna Dołącz jest typ sql dołączyć które jest używane do łączenia stół do siebie, szczególnie gdy tabela ma klucz obcy odwołujący własny klucz podstawowy. Konieczne jest, aby zapewnić, że dołączyć oświadczenie definiuje alias obu kopii tabeli, aby uniknąć kolumny niejasności.

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:

Nie Equi Dołącz jest SQL Dołącz których stan ustala się przy użyciu wszystkich operatorów porównania oprócz równości (=) operatora. Podobnie jak> =, <=, <,>

SQL dla Equi Dołącz Przykład:

Jeśli chcesz znaleźć nazwiska studentów, którzy nie są studia albo ekonomię, sql zapytanie 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