SQL оператор FROM

В этом учебном материале вы узнаете, как использовать SQL FROM с синтаксисом и примерами.

Описание

SQL оператор FROM используется для перечисления таблиц и любых объединений, необходимых для SQL оператора.

Синтаксис

Синтаксис оператора FROM в SQL:

FROM table1
[ { INNER JOIN
| LEFT [OUTER] JOIN
| RIGHT [OUTER] JOIN
| FULL [OUTER] JOIN } table2
ON table1.column1 = table2.column1 ]

Параметры или аргументы

table1 и table2
Это таблицы, используемые в операторе SQL. Две таблицы объединяются на основе table1.column1 = table2.column1.

Примечание

  • В SQL операторе FROM должна быть указана хотя бы одна таблица.
  • Если в операторе FROM указаны две или более таблиц, эти таблицы обычно объединяются с использованием объединений INNER или OUTER.

Пример — оператор FROM c одной таблицей

Мы начнем с рассмотрения того, как в SQL-запросе использовать FROM, в котором указана только одна таблица.

В этом примере у нас есть таблица suppliers со следующими данными:

supplier_idsupplier_namecitystate
100YandexMoscowRussian
200GoogleLansingMichigan
300OracleRedwood CityCalifornia
400BingRedmondWashington
500YahooSunnyvaleWashington
600DuckDuckGoPaoliPennsylvania
700QwantParisFrance
800FacebookMenlo ParkCalifornia
900Electronic ArtsSan FranciscoCalifornia

Введите следующий SQL оператор:

Будет выбрано 3 записи. Вот результаты, которые вы должны получить:

supplier_idsupplier_namecitystate
100YandexMoscowRussian
200GoogleLansingMichigan
300OracleRedwood CityCalifornia

В этом примере мы использовали оператор FROM для отображения таблицы suppliers. В этом запросе нет выполненных соединений, так как в FROM мы перечислили только одну таблицу.

Пример — две таблицы в операторе FROM (INNER JOIN)

Давайте посмотрим, как использовать предложение FROM, чтобы INNER JOIN (объединить) вместе две таблицы.

В этом примере у нас есть таблица products со следующими данными:

product_idproduct_namecategory_id
1Pear50
2Banana50
3Orange50
4Apple50
5Bread75
6Sliced Ham25
7KleenexNULL

И таблица categories со следующими данными:

category_idcategory_name
25Deli
50Produce
75Bakery
100General Merchandise
125Technology

Выполните следующий SQL-оператор:

Будет выбрано 5 записей. Вот результаты, которые вы должны получить:

product_namecategory_name
BananaProduce
OrangeProduce
AppleProduce
BreadBakery
Sliced HamDeli

В этом примере оператора FROM используется объединение двух таблиц — products и categories. В этом случае мы используем FROM, чтобы указать INNER JOIN между таблицами products и categories на основе столбца category_id в обеих таблицах.

Пример — две таблицы в операторе FROM (OUTER JOIN)

Рассмотрим как использовать FROM, когда мы соединяем вместе две таблицы, используя OUTER JOIN. В этом случае мы рассмотрим LEFT OUTER JOIN.

Давайте использовать те же таблицы products и categories, что и в примере INNER JOIN выше, но на этот раз мы объединим таблицы, используя LEFT OUTER JOIN. Введите следующий SQL оператор:

Будет выбрано 6 записей. Вот результаты, которые вы должны получить:

product_namecategory_name
BananaProduce
OrangeProduce
AppleProduce
BreadBakery
Sliced HamDeli
KleenexNULL

В этом примере FROM используется LEFT OUTER JOIN с таблицами products и categories на основе category_id в обеих таблицах.

Теперь в нашем наборе результатов появится последняя запись с product_name ‘Kleenex’ со значением NULL для category_name. Эта запись не появилась в наших результатах, когда мы выполняли INNER JOIN.