Skip to content
Skip to content
Menu
Info Cafe
Info Cafe

SQLite CROSS JOIN z praktycznym przykładem

By admin on 19 lutego, 2021

Podsumowanie: w tym poradniku dowiesz się, jak używać SQLite CROSS JOIN do łączenia dwóch lub więcej zestawów wyników z wielu tabel.

Wprowadzenie do SQLite CROSS JOIN clause

Jeśli używasz LEFT JOININNER JOIN, lub CROSS JOIN bez klauzuli ON lub USING, SQLite tworzy iloczyn kartezjański zaangażowanych tabel. Liczba wierszy w iloczynie kartezjańskim jest iloczynem liczby wierszy w każdej z zaangażowanych tabel.

Załóżmy, że mamy dwie tabele A i B. Poniższe instrukcje wykonują złączenie krzyżowe i produkują iloczyn kartezjański wierszy z tabel A i B.

SELECT *FROM A JOIN B;
Code language: SQL (Structured Query Language) (sql)
SELECT *FROM AINNER JOIN B;
Code language: SQL (Structured Query Language) (sql)
SELECT *FROM ACROSS JOIN B;
Code language: SQL (Structured Query Language) (sql)
SELECT * FROM A, B;
Code language: SQL (Structured Query Language) (sql)

Załóżmy, że, tabela A ma N wierszy, a tabela B ma M wierszy, CROSS JOIN tych dwóch tabel wyprodukuje zestaw wyników, który zawiera NxM wiersze.

Wyobraź sobie, że jeśli masz trzecią tabelę C z K wierszy, wynik klauzuli CROSS JOIN tych trzech tabel będzie zawierał NxMxK wierszy, które mogą być bardzo ogromne. Dlatego powinieneś być bardzo ostrożny, gdy używasz klauzuli CROSS JOIN.

Klauzule INNER JOIN i LEFT JOIN są używane częściej niż klauzula CROSS JOIN. Jednak znajdziesz CROSS JOIN klauzula bardzo przydatna w niektórych przypadkach.

Na przykład, gdy chcesz mieć macierz, która ma dwa wymiary wypełnione danymi całkowicie jak członkowie i daty dane w bazie danych członkostwa. Chcesz sprawdzić osoby uczestniczące w członkostwie dla wszystkich istotnych dat. W tym przypadku możesz użyć klauzuli CROSS JOIN jako następującego oświadczenia:

SELECT name, date FROM membersCROSS JOIN dates;
Code language: SQL (Structured Query Language) (sql)

Przykład klauzuliSQLite CROSS JOIN

Następujące instrukcje tworzą tabele ranks i suits przechowujące rangi i garnitury dla talii kart oraz wstawiają kompletne dane do tych dwóch tabel.

CREATE TABLE ranks ( rank TEXT NOT NULL);CREATE TABLE suits ( suit TEXT NOT NULL);INSERT INTO ranks(rank) VALUES('2'),('3'),('4'),('5'),('6'),('7'),('8'),('9'),('10'),('J'),('Q'),('K'),('A');INSERT INTO suits(suit) VALUES('Clubs'),('Diamonds'),('Hearts'),('Spades');
Code language: SQL (Structured Query Language) (sql)

Następująca instrukcja wykorzystuje klauzulę CROSS JOIN do zwrócenia kompletnych danych o talii kart:

SELECT rank, suit FROM ranks CROSS JOIN suitsORDER BY suit;
Code language: SQL (Structured Query Language) (sql)

.

.

.

.

.

rank suit
2 Kluby
3 Kluby
4 Clubs
5 Clubs
6 Clubs
7 Clubs
8 Clubs
9 Clubs
10 Clubs
J Clubs
Q Clubs
K Clubs
A Clubs
2 Diamonds
3 Diamonds
4 Diamonds
5 Diamonds
6 Diamenty
7 Diamenty
8 Diamenty
9 Diamenty
10 Diamenty
J Diamenty
Q Diamenty
K Diamonds
A Diamonds
2 Hearts
3 Hearts
4 Hearts
5 Hearts
6 Hearts
7 Hearts
8 Hearts
9 Hearts
10 Hearts
J Hearts
Q Hearts
K Hearts
A Hearts
2 Spades
3 Spades
4 Spades
5 Spades
6 Spades
7 Spades
8 Spades
9 Spades
10 Spad
J Spad
Q Spad
K Spad
A Pady

W tym poradniku, dowiedziałeś się, jak używać klauzuli SQLite CROSS JOIN do tworzenia iloczynu kartezjańskiego wielu tabel uczestniczących w złączeniu.

  • Czy ten tutorial był pomocny?
  • TakNie

Zobacz wpisy

Dla tego, co najważniejsze.
Zapalenie płuc w kontekście ciężkiej sepsy: istotny problem diagnostyczny

Dodaj komentarz Anuluj pisanie odpowiedzi

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Najnowsze wpisy

  • Firebush (Polski)
  • Prognoza stawek CD na 2021 rok: Stopy procentowe prawdopodobnie pozostaną na niskim poziomie, ale mogą wzrosnąć w dalszej części roku
  • Jak ustrukturyzować dokumentację systemu zarządzania jakością
  • Zdrowe Gry i Zajęcia dla Dzieci | UIC Online Informatics
  • Wheat Ales (American) (Polski)
  • Korzyści z karmienia piersią po roku
  • Czy bezpiecznie jest wrzucać fusy z kawy do zlewu | Atomic Plumbing
  • Cool-Down After Your Workout (Polski)
  • Nasza praca
  • Najlepsza ręczna maszyna do szycia do kupienia: 2020

Meta

  • Zaloguj się
  • Kanał wpisów
  • Kanał komentarzy
  • WordPress.org

Archiwa

  • Marzec 2021
  • Luty 2021
  • Styczeń 2021
  • Grudzień 2020
  • DeutschDeutsch
  • NederlandsNederlands
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • PolskiPolski
  • 日本語日本語
©2021 Info Cafe | WordPress Theme by SuperbThemes.com