SQLite

Как да се присъедините към таблици в SQLite

Как да се присъедините към таблици в SQLite
Понякога, когато работим с бази данни, може да се наложи да обединим записи от таблици в база данни. Когато случаят е такъв, можем да използваме оператора SQL JOIN, който комбинира посочените полета, използвайки общи стойности във всяко поле.

Има три основни типа присъединявания на SQLite.

  1. КРЪСТНОТО ПРИСЪЕДИНЯВАНЕ
  2. ВЪТРЕШНО ПРИСЪЕДИНЯВАНЕ
  3. ЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ

Този урок бързо ще ви преведе през тези присъединявания на SQLite и ще ви покаже как да се присъедините към записите в базата данни.

Нека започнем с ВЪТРЕШНОТО ПРИСЪЕДИНЯВАНЕ, тъй като е лесно и изгражда основа, за да разберем други видове СЪЕДИНЕНИЕ.

1: ВЪТРЕШНОТО ПРИСЪЕДИНЯВАНЕ

INNER JOIN работи чрез създаване на нова таблица чрез комбиниране на стойностите на посочените таблици. Започва чрез сравняване на реда във всяка таблица и намиране на всички съвпадащи двойки за посочения предикат. След това комбинира съвпадащите двойки в един ред.

Общият синтаксис за INNER JOIN е:

ИЗБЕРЕТЕ колона (и) ОТ table1 INNER JOIN table2 ON table1.колона = таблица2.колона;

Нека разгледаме операция JOIN, за да илюстрираме как работи.

Да предположим, че имате таблица, наречена потребители с полета: id, име, възраст, езикова примерна SQL заявка за създаване на таблица е по-долу:

СЪЗДАЙТЕ ТАБЛИЦА "потребители" (
"id" INTEGER NOT NULL,
"име" ТЕКСТ НЕ НУЛ,
"възраст" ИНТЕГЪР НЕ Е НУЛ,
"езиков" ТЕКСТ,
ОСНОВЕН КЛЮЧ (АВТОМОБИЛИЗИРАНЕ "id")
);

Имаме и друга таблица, наречена редове с полетата id и Role-SQL заявка, предоставена по-долу:

СЪЗДАЙТЕ ТАБЛИЦА "Роли" (
"id" INTEGER NOT NULL,
"роля" ТЕКСТ,
ОСНОВЕН КЛЮЧ (АВТОМОБИЛИЗИРАНЕ "id")
)

Сега можем да стартираме операция SQLite INNER JOIN, използвайки заявката, показана по-долу:

ИЗБЕРЕТЕ потребители.id, потребители.име, Роли.роля ОТ потребители ВЪТРЕШНО ПРИСЪЕДИНЯВАНЕ Роли за потребители.id = Роли.документ за самоличност;

Горната заявка ще доведе до таблицата, показана по-долу:

2: КРЪСТНОТО ПРИСЪЕДИНЯВАНЕ

Другият тип SQL JOIN е CROSS JOIN. Този тип съвпада с всеки ред от първата таблица с всеки ред във втората таблица. Мислете за това като за декартов продукт, защото резултатите са набор от редове от таблица 1, съчетани с всеки ред от таблица 2. Например, ако table1 има (a) редове и table2 има (b) редове, получената таблица ще има * b ред.

ЗАБЕЛЕЖКА: Бъдете внимателни, когато използвате кръстосани съединения, тъй като те могат да доведат до огромни масиви.

Общият синтаксис за кръстосано присъединяване е:

ИЗБЕРЕТЕ колона (и) ОТ table1 CROSS JOIN table2;

Помислете за кръстосано съединение от потребителската таблица с всички редове на таблицата с ролите. Помислете за SQL заявката по-долу:

ИЗБЕРЕТЕ * ОТ потребителите CROSS JOIN роли;

Изпълнението на горната заявка ще доведе до таблица, както е показано по-долу:

3: ЛЯВОТО ВЪНШНО ПРИСЪЕДИНЯВАНЕ

Окончателното присъединяване, което ще разгледаме, е ВЪНШНОТО СЪЕДИНЕНИЕ. OUTER JOIN е продължение на INNER JOIN. Подобно на INNER присъединяване, ние го изразяваме при условия като ON, NEUTRAL и USING. Също така е добре да се отбележи, че SQL определя три вида ВЪНШНИ ПРИСЪЕДИНЯВАНИЯ: ляво, дясно и пълно, но SQLite поддържа само ЛЯВО ПРИСЪЕДИНЯВАНЕ.

LEFT външното JOIN връща всички редове от LEFT таблицата, посочена в условието, и само редовете от други таблици, където обединеното условие е вярно.

Обмислете следната заявка.

ИЗБЕРЕТЕ потребители.id, потребители.име, роли.роля, потребители.език ОТ ПОТРЕБИТЕЛИ НАЛЯВО ВЪНШНО ПРИСЪЕДИНЯВАНЕ Роли на потребителите.id = Роли.документ за самоличност;

Горната заявка ще доведе до таблицата, показана по-долу:

Заключение

Този урок илюстрира как да изпълнявате SQL обединения в SQLite и да създавате нови таблици с модифицирана информация. Добре е да продължите да експериментирате с SQL JOIN, тъй като те са много полезни при работа с бази данни.

Благодаря ви за четенето!

Средният бутон на мишката не работи в Windows 10
The среден бутон на мишката ви помага да превъртате дълги уеб страници и екрани с много данни. Ако това спре, добре ще свършите да използвате клавиату...
Как да промените левия и десния бутон на мишката на компютър с Windows 10
Напълно нормално е всички устройства на компютърни мишки да са ергономично проектирани за десничари. Но има налични устройства за мишка, които са спец...
Емулирайте кликванията на мишката, като задържите курсора на мишката с кликаща мишка в Windows 10
Използването на мишка или клавиатура в неправилна поза при прекомерна употреба може да доведе до много здравословни проблеми, включително напрежение, ...