русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

GROUP BY IDGroup


Дата добавления: 2015-07-09; просмотров: 519; Нарушение авторских прав


HAVING Count(IDGroup)< 5 ) ;

Объединение двух или более запросов с помощью UNION

UNION – специальный оператор, с помощью которого можно из двух или более запросов построить единое результирующее множество, т.е. выходные данные одного запроса присоединяются к выходным данным другого запроса.

Основные правила при реализации операций над множествами

· запросы, соединяемые оператором UNION должны иметь одинаковое количество столбцов в предложении SELECT;

· возвращаемый комбинированный результат будет иметь заголовки столбцов первого предложения SELECT;

· тип данных каждого столбца должен быть совместим с типом данных соответствующего столбца другого запроса;

· по умолчанию режимом вывода для UNION является DISTINCT.

Пример 77

Задача.

Получить все записи о студентах, фамилии которых начинаются на букву 'М' или 'И'.

Решение.

SELECT NRecordBook,StName

FROM Student

WHERE SUBSTRING(StName,1,1)= 'М'

UNION

SELECT NRecordBook,StName

FROM Student

WHERE SUBSTRING[7](StName,1,1)= 'И'

Результат выполнения запроса.

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

select StName

FROM Student

WHERE StName='Иванов И.И.'

UNION all

select StName

FROM Student

WHERE SUBSTRING(NRecordBook,6,1)='1'

После выполнения операции UNION ALL каждое имя будет выведено столько раз, сколько раз оно встречается в запросах.

Результат выполнения запроса.

Предложение ORDER BY в операциях над множествами может стоять только в последнем предложении запроса, при этом вместо имен столбцов используются их номера из предложения SELECT.

Пример 78

Задача.

Вывести всех студентов, у которых есть или отличные или хорошие оценки.

Решение.

SELECT StName ФИО, Mark Оценка



FROM Student s, Progress p

WHERE s.NRecordBook=p.NRecordBook

AND Mark=5

UNION

SELECT StName,Mark

FROM Student s,Progress p

WHERE s.NRecordBook=p.NRecordBook

AND Mark=4

ORDER BY 1

Результат выполнения запроса.

 

Задание 27

Используя операторы над множествами, вывести имена всех студентов, которые сдали экзамен по дисциплине Проектирование баз данных или по дисциплине Организация баз данных.

Вопросы для самоконтроля к лабораторной работе № 5

1. Что такое подзапрос?

2. В каких командах SQL могут быть использованы подзапросы?

3. Какой порядок выполнения подзапроса?

4. Когда невозможно использовать подзапрос?

5. Какой порядок выполнения коррелированных подзапросов?

6. В каких случаях подзапросы могут передать несколько строк в главное предложение?

7. Сколько раз выполняется основной запрос при реализации коррелированного подзапроса?

8. Где расположен подзапрос в логическом выражении предложения основного запроса: до оператора сравнения, после оператора сравнения?

9. Какие предложения допустимые для основного запроса не могут использовать в подзапросе?

10. Какие существуют типы подзапросов?

11. В каких командах SQL могут быть использованы подзапросы?

12. В каких предложениях SELECT могут быть использованы подзапросы?

13. Какие предложения SELECT нельзя использовать в подзапросах?

14. Где должен находиться подзапрос?

15. Какие операторы сравнения работают с несколькими строками?

16. Какие операторы сравнения работают только с одной строкой?

17. В каких подзапросах вложенная команда SELECT выполняется первой?

18. Какие подзапросы называются однострочными?

19. Какой принцип работы коррелированного подзапроса?

20. Какие требования предъявляются к таблицам, над которыми выполняются операторы union?

 

 


 



<== предыдущая лекция | следующая лекция ==>
FROM Progress | Представления


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.082 сек.