W Cat - SQL за 24 часа

Здесь есть возможность читать онлайн «W Cat - SQL за 24 часа» весь текст электронной книги совершенно бесплатно (целиком полную версию без сокращений). В некоторых случаях можно слушать аудио, скачать через торрент в формате fb2 и присутствует краткое содержание. Жанр: Базы данных, на русском языке. Описание произведения, (предисловие) а так же отзывы посетителей доступны на портале библиотеки ЛибКат.

SQL за 24 часа: краткое содержание, описание и аннотация

Предлагаем к чтению аннотацию, описание, краткое содержание или предисловие (зависит от того, что написал сам автор книги «SQL за 24 часа»). Если вы не нашли необходимую информацию о книге — напишите в комментариях, мы постараемся отыскать её.

SQL за 24 часа — читать онлайн бесплатно полную книгу (весь текст) целиком

Ниже представлен текст книги, разбитый по страницам. Система сохранения места последней прочитанной страницы, позволяет с удобством читать онлайн бесплатно книгу «SQL за 24 часа», без необходимости каждый раз заново искать на чём Вы остановились. Поставьте закладку, и сможете в любой момент перейти на страницу, на которой закончили чтение.

Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

FROM таблица1 [, таблица2 ]

[ WHERE ]

КОМАНДА{UNION | EXCEPT INTERSECT | UNION ALL}

SELECT столбец1 [, столбец2 ] FROM таблица1 [, таблица2 ]

[ WHERE ]

[ ORDER BY ]

Рассмотрим пример

SELECT EMP_ID FROM EMPLOYEE_TBL

UNION

SELECT EMP_ID FROM EMPLOYEE_PAY_TBL

ORDER BY 1;

В результате вывод этого составного запроса будет упорядочен по первому столбцу каждого из составляющих запросов С помощью сортировки в составном запросе легко выявить повторяющиеся строки

Этот оператор SQL возвращает упорядоченный список табельных номеров служащих ИЗ таблиц EMPLOYEEJTBL И EMPLOYEE_PAY_TBL без повторений

Обратите внимание на то что здесь выражение ключевого слова ORDER BY ссылается на столбец по номеру 1, а не по имени

В следующем примере показано использование ключевого слова ORDER BY в составном запросе с реальными данными В выражении ключевого слова ORDER BY можно использовать имя столбца, если этот столбец присутствует и имеет одно и то же имя в каждом из составляющих оператор запросов

SELECT PROD_DESC FROM PRODUCTSJTBL

ONION

SELECT PROD_DESC FROM PRODUCTS_TBL

ORDER BY PROD_DESC;

PROD_DESC

ИСКУССТВЕННЫЕ ПАРАФИНОВЫЕ ЗУБЫ

КОСТЮМ ВЕДЬМЫ

КОСТЮМЫ В АССОРТИМЕНТЕ

МАСКИ В АССОРТИМЕНТЕ

ПЛАСТИКОВЫЕ ПАУКИ

ПЛАСТИКОВЫЕ ТЫКВЫ

ПОЛОЧКА ИЗ ДУБА

СЛАДКАЯ КУКУРУЗА

ТЫКВЕННЫЕ КОНФЕТЫ

ФОНАРИ

ЦЕПОЧКА ДЛЯ КЛЮЧЕЙ

11 строк выбраны.

В следующем примере вместо имени столбца для сортировки использован его номер

SELECT PROD_DESC FROM PRODUCTS_TBL

UNION

SELECT PROD_DESC FROM PRODUCTS_TBL

ORDER BY 1,

PROD_DESC

ИСКУССТВЕННЫЕ ПАРАФИНОВЫЕ ЗУБЫ

КОСТЮМ ВЕДЬМЫ

КОСТЮМЫ В АССОРТИМЕНТЕ

МАСКИ В АССОРТИМЕНТЕ

ПЛАСТИКОВЫЕ ПАУКИ

ПЛАСТИКОВЫЕ ТЫКВЫ

ПОЛОЧКА ИЗ ДУБА

СЛАДКАЯ КУКУРУЗА

ТЫКВЕННЫЕ КОНФЕТЫ

ФОНАРИ

ЦЕПОЧКА ДЛЯ КЛЮЧЕЙ

11 строк выбраны.

Использование GROUP BY в составных запросах

В отличие от ORDER BY, ключевое слово GROUP BY можно использовать не только в любом из входящих в составной запрос операторе SELECT, но и для всего составного запроса в целом, разместив GROUP BY в конце. Кроме того, вместе с GROUP BY в любом из входящих в составной запрос операторе SELECT можно использовать ключевое слово HAVING (которое иногда используется с GROUP BY).

Синтаксис оператора с использованием GROUP BY должен быть следующим.

SELECT столбец1 [, столбец2 ]

FROM таблица1 [, таблица2 ]

[ WHERE ]

; GROUP BY ]

t HAVING ]

КОМАНДА{UNION | EXCEPT | INTERSECT | UNION ALL}

SELECT столбец1 [, столбец2 ]

FROM таблица1 [, таблица2 ]

[ WHERE ]

[ GROUP BY ]

[ HAVING ]

[ ORDER BY ]

В следующем примере выбираются буквальные символьные строки, представляющие записи о заказчиках, служащих и товарах. Каждый из входящих в оператор запросов просто подсчитывает число всех записей соответствующей таблицы. В выражении GROUP BY задается группирование выводимых данных по столбцу номер 1.

SELECT 'ЗАКАЗЧИКИ' TYPE, COUNT(*)

FROM CUSTOMERJTBL

UNION

SELECT 'СЛУЖАЩИЕ' TYPE, COUNT(*)

FROM EMPLOYEEJTBL

UNION

SELECT 'ТОВАРЫ' TYPE, COUNT(*)

FROM PRODUCTS_TBL

GROUP BY 1;

TYPE COUNT(*)

ЗАКАЗЧИКИ 15

СЛУЖАЩИЕ 6

ТОВАРЫ 11

3 строки выбраны.

Следующий запрос возвращает те же данные, но в нем дополнительно используется ключевое слово ORDER BY.

SELECT 'ЗАКАЗЧИКИ' TYPE, COUNT(*)

FROM CUSTOMER_TBL

UNION

SELECT 'СЛУЖАЩИЕ' TYPE, COUNT(*)

FROM EMPLOYEEJTBL

UNION

SELECT 'ТОВАРЫ' TYPE, COUNT(*) FROM PRODUCTS_TBL

GROUP BY 1 ORDER BY 2;

TYPE COUNT(*)

СЛУЖАЩИЕ 6

ТОВАРЫ 11

ЗАКАЗЧИКИ 15

3 строки выбраны.

Здесь выведенные данные отсортированы по столбцу 2, представляющем результаты подсчетов. Поэтому числа во втором столбце оказываются упорядоченными от меньшего к большему.

Обеспечение правильности результатов

При использовании составных операторов следует быть предельно внимательными. Например, если в составном операторе с использованием команды INTERSECT неправильно задать первый из операторов SELECT, в результате можно получить либо неполные, либо вообще неверные данные. Кроме того, всегда ли нужно исключать повторения, как это делает команда UNION, или наоборот, отображать все повторения, как это делает команда UNION ALL Необходимо ли видеть все строки, не входящие в результат второго запроса при использовании команды EXCEPT? Как видите, неправильно составленный составной запрос или неправильный порядок запросов, входящих в составной, легко может привести к неправильным результатам

Неполные данные при выводе тоже квалифицируются как неправильные данные.

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Похожие книги на «SQL за 24 часа»

Представляем Вашему вниманию похожие книги на «SQL за 24 часа» списком для выбора. Мы отобрали схожую по названию и смыслу литературу в надежде предоставить читателям больше вариантов отыскать новые, интересные, ещё непрочитанные произведения.


Отзывы о книге «SQL за 24 часа»

Обсуждение, отзывы о книге «SQL за 24 часа» и просто собственные мнения читателей. Оставьте ваши комментарии, напишите, что Вы думаете о произведении, его смысле или главных героях. Укажите что конкретно понравилось, а что нет, и почему Вы так считаете.

x