Разделы презентаций


Базы данных Язык запросов SQL. Команда SELECT

Содержание

Команда SELECT – выборка данныхОбщий синтаксис:SELECT [{ ALL | DISTINCT }] { список_вывода | * } FROM имя_таблицы1 [ алиас1 ] [, имя_таблицы2 [ алиас2 ].,..] [ WHERE условие_отбора_записей ] [ GROUP BY {

Слайды и текст этой презентации

Слайд 1Базы данных
Язык запросов SQL. Команда SELECT

Базы данныхЯзык запросов SQL. Команда SELECT

Слайд 2Команда SELECT – выборка данных
Общий синтаксис:
SELECT [{ ALL | DISTINCT

}] { список_вывода | * }
FROM имя_таблицы1 [ алиас1 ]

[, имя_таблицы2 [ алиас2 ].,..]
[ WHERE условие_отбора_записей ]
[ GROUP BY { имя_поля | выражение }.,.. ]
[ HAVING условие_отбора_групп ]
[ UNION [ALL] SELECT …]
[ ORDER BY имя_поля1 | целое [ ASC | DESC ]
[, имя_поля2 | целое [ ASC | DESC ].,..]];

Примеры:
select * from departs;
select name, post from emp;
Команда SELECT – выборка данныхОбщий синтаксис:SELECT [{ ALL | DISTINCT }] { список_вывода | * }	FROM имя_таблицы1

Слайд 3Формирование списка вывода (проекция)
Общий синтаксис списка вывода:
[{all | distinct}] {

* | выражение1 [алиас1] [, выражение2 [алиас2] .,..]}
Список ввода находится

между ключевыми словами SELECT и FROM.
Вывести все поля всех записей из таблицы Проекты (Project):
select * from project;
Вывести список сотрудников с указанием их должности и № отдела:
select depno, name, post
from emp;
Вывести список сотрудников с указанием их должности и зарплаты:
select name 'ФИО', post 'Должность', salary*0.87 'Зарплата'
from emp;
Установить другой формат вывода даты:
alter session set nls_date_format = 'dd/mm/yyyy';
Формирование списка вывода (проекция)Общий синтаксис списка вывода:	[{all | distinct}] { * | выражение1 [алиас1] [, выражение2 [алиас2]

Слайд 4Формирование списка вывода (проекция)
Вывести должности и оклады сотрудников:
select post, salary


from emp;
Вывести должности и оклады сотрудников без повторов:
select DISTINCT post,

salary
from emp;
Вывести отделы и должности сотрудников без повторов:
select DISTINCT depno, post
from emp;
Задание: вывести список сотрудников с указанием ФИО, даты рождения и адреса.

select name 'ФИО', born 'Дата рождения', adr 'Адрес'
from emp;

Формирование списка вывода (проекция)Вывести должности и оклады сотрудников:	select post, salary 		from emp;Вывести должности и оклады сотрудников без

Слайд 5Упорядочение результата
Вывести данные из таблицы Проекты в порядке даты начала

проекта:
select *
from Project
order by dbegin;
Упорядочить список сотрудников по отделам

и по ФИО:
select depno, name, post
from emp
order by depno, name; -- order by 1,2;
Упорядочить сотрудников по зарплате (от большей к меньшей):
select name 'ФИО', post 'Должность', salary 'Зарплата'
from emp
order by 3 DESC;
Упорядочить данные об отделах, должностях и зарплатах:
select depno 'Номер отдела', post 'Должность', salary 'Зарплата'
from emp
order by 1, 3 DESC, 2;
Упорядочение результатаВывести данные из таблицы Проекты в порядке даты начала проекта:	select * 		from Project		order by dbegin;Упорядочить список

Слайд 6Выбор данных из таблицы (селекция)
WHERE – содержит условия выбора отдельных записей. Условие

является логическим выражением и может принимать одно из 3-х значений:


TRUE – истина,
FALSE – ложь,
NULL – неизвестное, неопределённое значение (интерпретируется как ложь).
Условие формируется путём применения различных операторов и предикатов. Операторы сравнения:
= равно, <>, != не равно, > больше,
>= больше или равно, <= меньше или равно, < меньше.
Вывести список сотрудников 2-го отдела:
select * from emp
where depno = 2;
Вывести список текущих проектов:
select * from project
where dend > sysdate;
-- sysdate – функция, возвращающая текущую дату
Выбор данных из таблицы (селекция)WHERE – содержит условия выбора отдельных записей. Условие является логическим выражением и может принимать одно

Слайд 7Логические операторы
Для формирования условий используются следующие логические операторы:
AND – логическое

произведение (И),
OR – логическая сумма (ИЛИ),
NOT – отрицание (НЕ).

Операция И: Операция ИЛИ:

Операция НЕ:

Логические операторыДля формирования условий используются следующие логические операторы:	AND – логическое произведение (И),	OR  – логическая сумма (ИЛИ),	NOT

Слайд 8Выбор данных из таблицы по условию
Вывести список сотрудников 2-го отдела

с зарплатой больше 30000 рублей:
select * from emp
where depno =

2 AND salary > 30000 ;
Вывести список сотрудников-мужчин, родившихся после 1979 года:
select * from emp
where born > '31/12/1979' AND sex = 'м';
Вывести список сотрудников 2-го и 5-го отделов:
select * from emp
where depno=2 OR depno = 5;
Вывести список сотрудников 2-го и 5-го отделов в зарплатой не менее 30000:
select * from emp
where (depno=2 OR depno = 5) AND salary >= 30000 ;
Вывести список всех сотрудников, кроме сотрудников 2-го и 5-го:
select * from emp
where NOT (depno=2 OR depno = 5);
Выбор данных из таблицы по условиюВывести список сотрудников 2-го отдела с зарплатой больше 30000 рублей:	select * from

Слайд 9Выбор данных из таблицы по условию
Задание 1: вывести список текущих

проектов стоимостью более 2 млн. рублей.
select

*
from project
where dend > sysdate AND cost > 2000000;

Задание 2: вывести список сотрудников, работающих в должностях 'инженер' и 'ведущий инженер'.

select *
from emp
where post = 'инженер' OR post = 'ведущий инженер' ;

Задание 3: вывести список сотрудников, работающих в должности 'охранник', с зарплатой более 20000 рублей.

select *
from emp
where post = 'охранник' AND salary > 20000;

Выбор данных из таблицы по условиюЗадание 1: вывести список текущих проектов стоимостью более 2 млн. рублей.

Слайд 10Предикаты формирования условия
Предикат вхождения в список значений:
имя_поля IN ( значение1

[, значение2,... ] )
выражение IN ( значение1 [, значение2,... ]

)
Примеры:
Список сотрудников отделов 5, 8 и 9:
select *
from emp
where depno IN ( 5, 8, 9 ) ;
Список сотрудников, работающих в должностях 'инженер' и 'ведущий инженер' :
select *
from emp
where post IN ( 'инженер', 'ведущий инженер' );
Предикаты формирования условия	Предикат вхождения в список значений:		имя_поля IN ( значение1 [, значение2,... ] )		выражение IN ( значение1

Слайд 11Предикаты формирования условия
Предикат вхождения в диапазон:
имя_поля BETWEEN минимальное_значение

AND максимальное_значение
выражение BETWEEN минимальное_значение AND максимальное_значение

Минимальное значение должно быть меньше либо равно максимальному.
Примеры:
Список всех сотрудников со 2-го по 5-й отделы:
select *
from emp
where depno BETWEEN 2 AND 5 ;
Список сотрудников с чистой зарплатой от 20 до 30 тысяч рублей:
select *
from emp
where salary*0.87 BETWEEN 20000 AND 30000;
Предикаты формирования условия	Предикат вхождения в диапазон:  имя_поля BETWEEN минимальное_значение AND максимальное_значение выражение BETWEEN минимальное_значение AND максимальное_значение

Слайд 12Предикаты формирования условия
Предикат поиска подстроки: имя_поля LIKE 'шаблон'
Этот предикат применяется

только к полям типа CHAR и VARCHAR. Возможно использование шаблонов:


'_' – один любой символ,
'%' – произвольное количество любых символов (в т.ч., ни одного).
Примеры:
Список всех сотрудников-экономистов:
select * from emp
where post LIKE '%экономист%' ;
Список всех инженеров-специалистов (кроме просто инженеров):
select * from emp
where post LIKE 'инженер_%' ;
Экранировать специальное значение символов '_' и '%' можно так:
where <строка> LIKE '_#%%' ESCAPE '#';
Символ экранирования (escape) может быть любым. В примере первый символ % будет искаться как символ, а второй имеет специальное значение.
Предикаты формирования условия	Предикат поиска подстроки:	имя_поля LIKE 'шаблон' 	Этот предикат применяется только к полям типа CHAR и VARCHAR.

Слайд 13Предикаты формирования условия
Предикат поиска неопределенного значения:
значение IS [NOT] NULL
Если

значения является неопределенным (NULL), то предикат IS NULL выдаст истину,

а предикат IS NOT NULL – ложь.
Примеры:
Список всех сотрудников, у которых нет телефона (номер телефона неопределен):
select *
from emp
where phone IS NULL ;
Список все проекты, у которых определена стоимость:
select *
from project
where cost IS NOT NULL ;
Предикаты формирования условия	Предикат поиска неопределенного значения:		значение IS [NOT] NULL 	Если значения является неопределенным (NULL), то предикат IS

Слайд 14Использование предикатов
Задание 1: вывести список сотрудников, которых зовут 'ЮРИЙ'.
select *

from emp
where name LIKE '%ЮРИЙ%';
Задание

3: вывести список сотрудников, которые являются начальниками отделов.

select *
from emp
where post LIKE 'нач%отдел%';

Задание 2: вывести список проектов стоимостью от 1 до 2 млн. рублей.

select *
from project
where cost BETWEEN 1000000 AND 2000000;

Использование предикатовЗадание 1: вывести список сотрудников, которых зовут 'ЮРИЙ'.select *   from emp   where

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика