В этом учебном пособии вы узнаете, как использовать PostgreSQL оператор FROM с синтаксисом и примерами.
Описание
PostgreSQL FROM используется для перечисления таблиц и любой информации о соединении, необходимой для запроса в PostgreSQL.
Синтаксис
Синтаксис для предложения FROM в PostgreSQL - это:
[ { INNER JOIN
| LEFT OUTER JOIN
| RIGHT OUTER JOIN
| FULL OUTER JOIN } table2
ON table1.column1 = table2.column1 ]
Параметры или аргументы
- table1 and table2
- Таблицы, используемые в операторе PostgreSQL. Две таблицы объединяются на основе
table1.column1 = table2.column1
.
Примечание
- В операторе FROM должна быть указана как минимум одна таблица.
- Если в PostgreSQL операторе FROM указаны две или более таблиц, эти таблицы обычно объединяются с помощью JOIN INNER или OUTER, в отличие от более старого синтаксиса, помещенного в предложение WHERE.
Пример - с одной таблицей
Сложно объяснить синтаксис PostgreSQL оператора FROM, поэтому рассмотрим несколько примеров.
Мы начнем с рассмотрения того, как использовать FROM только с одной таблицей.
Например:
1 2 3 4 |
SELECT * FROM categories WHERE category_id >= 2500 ORDER BY category_id ASC; |
В этом примере мы использовали оператор FROM для вывода списка таблиц с именем categories. Соединения не выполняются, поскольку мы используем только одну таблицу.
Пример - две таблицы с INNER JOIN
Рассмотрим, как использовать FROM с двумя таблицами и INNER JOIN.
Например:
1 2 3 4 5 |
SELECT products.product_name, categories.category_name FROM categories INNER JOIN products ON categories.category_id = products.category_id ORDER BY products.product_name; |
Этот пример использует оператор FROM для перечисления двух таблиц - categories и products. И мы используем оператор FROM, чтобы указать INNER JOIN между таблицами categories и products на основе столбца category_id в обеих таблицах.
Пример - две таблицы с OUTER JOIN
Давайте посмотрим, как использовать оператор FROM, когда мы соединяем вместе две таблицы, используя OUTER JOIN. В этом случае мы рассмотрим LEFT OUTER JOIN.
Например:
1 2 3 4 5 6 |
SELECT categories.category_name, products.product_id FROM categories LEFT OUTER JOIN products ON categories.category_id = products.category_id WHERE categories.status = 'Active' ORDER BY categories.category_name; |
В этом примере используется оператор FROM для перечисления двух таблиц - categories и products. И мы используем оператор FROM, чтобы задать LEFT OUTER JOIN между таблицами category и products на основе столбцов category_id в обеих таблицах.