Как да съедините две таблици в MySQL, без да използвате Join?

Kak Da S Edinite Dve Tablici V Mysql Bez Da Izpolzvate Join



ПРИСЪЕДИНЯВАНЕ ” Клаузата се използва за комбиниране на таблиците в MySQL, но таблицата може да бъде обединена и без да се използва. По-конкретно, „ СЪЮЗ ”, “ СЪЮЗ ВСИЧКИ ' и запетаята ' , ” са три различни начина, които могат да доведат до същия резултат като клаузата „JOIN”. Запетаята може да се използва вместо клаузата „JOIN“, докато „UNION“ или „UNION ALL“ се използват с оператор „SELECT“ за обединяване на записите на две таблици.

Тази публикация ще обясни как да съедините две таблици в MySQL:







Метод 1: Свържете две таблици в MySQL с помощта на „,“

В MySQL таблиците могат да се обединяват с помощта на „ , ” вместо „ ПРИСЪЕДИНЯВАНЕ ' клауза. Синтаксисът му е даден по-долу:



ИЗБЕРЕТЕ *
ОТ [ таблица1-име ] , [ таблица2-име ] ;



Основната разлика е само замяната на ключовата дума „ ПРИСЪЕДИНЯВАНЕ ' с ' , ”:





ИЗБЕРЕТЕ *
ОТ [ таблица1-име ] ПРИСЪЕДИНЯВАНЕ [ таблица2-име ] ;

Използвайте запетая ' , ” синтаксис с „ КЪДЕТО ” клауза за обединяване на таблиците въз основа на конкретно условие. Синтаксисът е даден по-долу:



ИЗБЕРЕТЕ *
ОТ [ таблица1-име ] , [ таблица2-име ]
КЪДЕТО [ състояние ] ;

Пример 1: Използване на „,“ без условие

Да се ​​присъединим' продукти ' и ' потребителски данни ” таблици, като посочите „ , ' както следва:

ИЗБЕРЕТЕ *
ОТ продукти, потребителски данни;

Изход

Резултатът изобразява, че таблиците „продукти“ и „потребителски данни“ са обединени без използване на клаузата „СЪЕДИНЯВАНЕ“.

Пример 2: Използване на „,“ с условие

Нека видим пример за свързване на две таблици, където „ userdata.id ” е по-голямо от 2 :

ИЗБЕРЕТЕ *
ОТ продукти, потребителски данни
WHERE userdata.id > 2 ;

Изход

Резултатът показа, че избраните таблици са били обединени въз основа на даденото условие.

Метод 2: Свързване на две таблици в MySQL с помощта на „UNION“ или „UNION ALL“

В MySQL, „ СЪЮЗ ' или ' СЪЮЗ ВСИЧКИ ” операторите могат да се използват за обединяване на наборите от резултати от множество оператори SELECT. Синтаксисът е даден по-долу:

ИЗБЕРЕТЕ * ОТ [ таблица1-име ]

СЪЮЗ | СЪЮЗ ВСИЧКИ

ИЗБЕРЕТЕ * ОТ [ таблица2-име ]

Горният синтаксис може да се използва с „UNION“ или „UNION ALL“.

Пример 1: Използване на оператора “UNION”.

В MySQL, „ СЪЮЗ ” обединява резултатите от множество изрази SELECT, но елиминира всички дублиращи се редове от резултата. Заявката е дадена по-долу:

ИЗБЕРЕТЕ * ОТ потребителски данни
СЪЮЗ
ИЗБЕРЕТЕ * ОТ данни на служителите;

Изход

Резултатът показва, че „ потребителски данни ' и ' данни за служителите ” таблиците са обединени и дублиращите се редове са елиминирани.

Пример 2: Използване на оператора „UNION ALL“.

В MySQL, „ СЪЮЗ ВСИЧКИ ” операторът обединява резултатите от множество оператори SELECT, без да елиминира дублиращите се редове.

Нека изпълним следната заявка за по-добро разбиране:

ИЗБЕРЕТЕ * ОТ потребителски данни
СЪЮЗ ВСИЧКИ
ИЗБЕРЕТЕ * ОТ данни на служителите;

Изход

Може да се забележи, че получената таблица съдържа и дублираните редове.

Пример 3: Използване на оператор „UNION“ с условието

В MySQL, „ СЪЮЗ ” може да се използва и с „ КЪДЕТО ” клауза за филтриране на резултата от два или повече израза SELECT въз основа на конкретно условие.

Примерът е даден по-долу:

ИЗБЕРЕТЕ документ за самоличност , Име за контакт, Град, Държава ОТ служител WHERE Emploee.id < = 5
СЪЮЗ
ИЗБЕРЕТЕ документ за самоличност , Име за контакт, Град, Държава FROM Доставчик WHERE Supplier.id < = 5 ;

Изход

Резултатът показва, че таблиците „ служител ' и ' Доставчик ” са присъединени при посочените условия.

Заключение

За да обедините две или повече маси, „ СЪЮЗ “, “ СЪЮЗ ВСИЧКИ ' и запетаята ' , ” може да се използва вместо „ ПРИСЪЕДИНЯВАНЕ ' клауза. Запетаята се използва чрез замяна на „ ПРИСЪЕДИНЯВАНЕ ” ключова дума. „ СЪЮЗ ' и ' СЪЮЗ ВСИЧКИ ” може също да се използва за свързване на множество таблици със или без дубликати. В тази статия е представено подробно ръководство за свързване на таблиците без използване на клаузата JOIN.