Базы данных Язык запросов SQL. Команда SELECT. Команда SELECT – выборка данных Общий синтаксис: SELECT [{ ALL | DISTINCT }] { список_вывода | * } FROM.

Презентация:



Advertisements
Похожие презентации
Базы данных Язык запросов SQL. Команда SELECT (продолжение)
Advertisements

СУБД 5. SQL для выборки данных. 2 SELECT Обработка элементов оператора SELECT выполняется в следующей последовательности: FROM – определяются имена используемых.
Выражения унарные (унарный минус) арифметические (+, -, *, /) сравнения (, =, =, , LIKE, BETWEEN...) конкатенации (||) логические (NOT, AND, OR)
1 Лекция 6 Команды категории извлечения данных языка структурированных запросов SQL План лекции Выборка определенных столбцов таблицы Устранение избыточных.
1 БАЗЫ ДАННЫХ Использование SQL для построения запросов. ЗАНЯТИЕ 6 ПУГАЧЁВ Ю.В. Учитель информатики Харьковская общеобразовательная школа І-ІІІ ступеней.
1. Операторов сравнения: 1. =,, <>, BETWEEN, IN, LIKE, AND, OR, NOT 2. Операндов, используемых для сравнения: 1. Константы (например, 365), 2. Текстовые.
Бланк запроса. Создание списка специальностей Вид при конструирования запросов.
СУБД MySQL - клиент-серверная СУБД Числовые(целые,действительные) Существует несколько разных типов целых чисел, различающихся количеством байтов данных,
Базы данных Язык запросов SQL. Команда SELECT. Дополнительные возможности.
История развития языка SQL Structured Query Language ɛ skju ɛ l ɛ skju ɛ l или si:kwəlsi:kwəl DML (Data Manipulation Language) DDL (Data Definition Language)
Содержание: 1. Управление данными. а) Извлечение данных команда SELECT; б) Полный список разделов. 2. Раздел SELECT. а) Синтаксис раздела SELECT; б) Ключевые.
Базы данных Язык запросов SQL. Введение. SQL – Structured Query Language SQL – это структурированный язык запросов к реляционным базам данных (БД). SQL.
1 TRANSACT-SQL. Лекция 3. © Куркурин Николай Дмитриевич. (906) Microsoft SQL Server 2000.
Вставка INSERT INTO table (column, column,...) VALUES (expr, expr...) LOAD DATA INFILE "C:\\tmp\\file.txt" INTO TABLE table.
Запросы в базе данных. Понятия запроса При работе с таблицами можно в любой момент выбрать из базы данных необходимую информацию с помощью запросов. Запрос.
Поиск в базах данных с помощью запросов. Условия поиска.
Основы SQL Запросы к базе данных. Что такое база данных SQL? SQL (Structured Query Language - «Структурированный язык запросов») - универсальный компьютерный.
Язык SQL Операторы манипулирования данными. Операции манипулирования данными DELETE операция удаления записей INSERT операция добавления или ввода новых.
Язык SQL Последовательности Представления Индексы.
Работа с запросами в MS Access Запросы - важнейший инструмент любой системы управления базами данных. Запросы служат для выбора записей, обновления таблиц.
Транксрипт:

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

Команда 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;

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

Формирование списка вывода (проекция) 1.Вывести должности и оклады сотрудников: select post, salary from emp; 2.Вывести должности и оклады сотрудников без повторов: select DISTINCT post, salary from emp; 3.Вывести отделы и должности сотрудников без повторов: select DISTINCT depno, post from emp; 4.Задание: вывести список сотрудников с указанием ФИО, даты рождения и адреса. select name 'ФИО', born 'Дата рождения', adr 'Адрес' from emp;

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

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

Логические операторы Для формирования условий используются следующие логические операторы: AND – логическое произведение (И), OR – логическая сумма (ИЛИ), NOT – отрицание (НЕ). Операция И:Операция ИЛИ: aba AND b aba OR b Операция НЕ: aNOT a 01 10

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

Выбор данных из таблицы по условию Задание 1: вывести список текущих проектов стоимостью более 2 млн. рублей. select * from project where dend > sysdate AND cost > ; Задание 2: вывести список сотрудников, работающих в должностях 'инженер' и 'ведущий инженер'. select * from emp where post = 'инженер' OR post = 'ведущий инженер' ; Задание 3: вывести список сотрудников, работающих в должности 'охранник', с зарплатой более рублей. select * from emp where post = 'охранник' AND salary > 20000;

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

Предикаты формирования условия Предикат вхождения в диапазон: имя_поля 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 AND 30000;

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

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

Использование предикатов Задание 1: вывести список сотрудников, которых зовут 'ЮРИЙ'. select * from emp where name LIKE '%ЮРИЙ%'; Задание 3: вывести список сотрудников, которые являются начальниками отделов. select * from emp where post LIKE 'нач%отдел%'; Задание 2: вывести список проектов стоимостью от 1 до 2 млн. рублей. select * from project where cost BETWEEN AND ;