Скачать презентацию 1 Написание простейших выражений на SQL Задачи Скачать презентацию 1 Написание простейших выражений на SQL Задачи

SQL.ppt

  • Количество слайдов: 33

1 Написание простейших выражений на SQL 1 Написание простейших выражений на SQL

Задачи занятия После завершения занятия вы должны уметь и знать следующее: • Возможности оператора Задачи занятия После завершения занятия вы должны уметь и знать следующее: • Возможности оператора SELECT языка SQL • Выполнять простые запросы SELECT • Различать выражения SQL и команды SQL*Plus 1 -2

Возможности выражения SELECT Выборка Проекция Таблица 1 1 -3 Соединение Таблица 2 Возможности выражения SELECT Выборка Проекция Таблица 1 1 -3 Соединение Таблица 2

Простое выражение SELECT FROM [DISTINCT] {*, column [alias], . . . } table; • Простое выражение SELECT FROM [DISTINCT] {*, column [alias], . . . } table; • SELECT определяет какие столбцы • FROM определяет из какой таблицы 1 -4

Написание выражений SQL • Выражения SQL не чувствительны к регистру. • Выражения SQL могут Написание выражений SQL • Выражения SQL не чувствительны к регистру. • Выражения SQL могут состоять из одной или нескольких строк. • Ключевые слова не могут переноситься и сокращаться. • Предложения обычно пишутся в различных строках. • Табуляции и отступы используются для улучшения читаемости. 1 -5

Выборка всех столбцов SQL> SELECT * 2 FROM dept; DEPTNO ----10 20 30 40 Выборка всех столбцов SQL> SELECT * 2 FROM dept; DEPTNO ----10 20 30 40 1 -6 DNAME -------ACCOUNTING RESEARCH SALES OPERATIONS LOC ------NEW YORK DALLAS CHICAGO BOSTON

Выборка конкретных столбцов SQL> SELECT deptno, loc 2 FROM dept; DEPTNO ----10 20 30 Выборка конкретных столбцов SQL> SELECT deptno, loc 2 FROM dept; DEPTNO ----10 20 30 40 1 -7 LOC ------NEW YORK DALLAS CHICAGO BOSTON

Умолчания при выводе • Выравнивание по умолчанию – Влево: Темпоральные и символьные данные – Умолчания при выводе • Выравнивание по умолчанию – Влево: Темпоральные и символьные данные – Вправо: Числовые данные • Вывод по умолчанию: В верхнем регистре 1 -8

Арифметические выражения Записывайте выражения для ЧИСЛОВЫХ и ТЕМПОРАЛЬНЫХ данных с использованием арифметических операторов. Оператор Арифметические выражения Записывайте выражения для ЧИСЛОВЫХ и ТЕМПОРАЛЬНЫХ данных с использованием арифметических операторов. Оператор Описание + - Вычитание * Умножение / 1 -9 Сложение Деление

Использование арифметических операторов SQL> SELECT ename, sal+300 2 FROM emp; ENAME SAL+300 ----- ----KING Использование арифметических операторов SQL> SELECT ename, sal+300 2 FROM emp; ENAME SAL+300 ----- ----KING 5000 5300 BLAKE 2850 3150 CLARK 2450 2750 JONES 2975 3275 MARTIN 1250 1550 ALLEN 1600 1900. . . 14 rows selected. 1 -10

Приоритеты операторов * / + _ • Умножение и деление имеют более высокий приоритет, Приоритеты операторов * / + _ • Умножение и деление имеют более высокий приоритет, чем сложение и вычитание. • Операторы с одинаковым приоритетом вычисляются слева направо. • Скобки используются для указания приоритетов вычисления и повышения читаемости выражений. 1 -11

Приоритет операторов SQL> SELECT ename, sal, 12*sal+100 2 FROM emp; ENAME SAL 12*SAL+100 ---------KING Приоритет операторов SQL> SELECT ename, sal, 12*sal+100 2 FROM emp; ENAME SAL 12*SAL+100 ---------KING 5000 60100 BLAKE 2850 34300 CLARK 2450 29500 JONES 2975 35800 MARTIN 1250 15100 ALLEN 1600 19300. . . 14 rows selected. 1 -12

Использование скобок SQL> SELECT ename, sal, 12*(sal+100) 2 FROM emp; ENAME SAL 12*(SAL+100) ----------KING Использование скобок SQL> SELECT ename, sal, 12*(sal+100) 2 FROM emp; ENAME SAL 12*(SAL+100) ----------KING 5000 61200 BLAKE 2850 35400 CLARK 2450 30600 JONES 2975 36900 MARTIN 1250 16200. . . 14 rows selected. 1 -13

Определение значения Null • null – это значение, которое неизвестно, не определено или неприменимо. Определение значения Null • null – это значение, которое неизвестно, не определено или неприменимо. • null – это не то же самое, что ноль или пробел. SQL> SELECT ename, job, comm 2 FROM emp; ENAME JOB COMM ----- ----KING PRESIDENT BLAKE MANAGER. . . TURNER SALESMAN 0. . . 14 rows selected. 1 -14

Null в арифметических выражениях Значением выражений, содержащих null, является null. SQL> select ename NAME, Null в арифметических выражениях Значением выражений, содержащих null, является null. SQL> select ename NAME, 12*sal+comm 2 from emp 3 WHERE ename='KING'; NAME 12*SAL+COMM ----------KING 1 -15

Определение псевдонима столбца • Переименовывает заголовок столбца • Полезно при вычислениях • Следует сразу Определение псевдонима столбца • Переименовывает заголовок столбца • Полезно при вычислениях • Следует сразу за именем колонки; ключевое слово AS опционально и может находиться между именем колонки и псевдонимом • Требует заключения в двойные кавычки, если содержит пробелы, специальные символы или чувствителен к регистру 1 -16

Использование псевдонимов столбцов SQL> SELECT ename AS name, salary 2 FROM emp; NAME SALARY Использование псевдонимов столбцов SQL> SELECT ename AS name, salary 2 FROM emp; NAME SALARY -------. . . SQL> SELECT ename "Name", 2 sal*12 "Annual Salary" 3 FROM emp; Name Annual Salary -------. . . 1 -17

Оператор конкатенации • Выполняет конкатенацию значений в столбцах или строк к значениям других столбцов Оператор конкатенации • Выполняет конкатенацию значений в столбцах или строк к значениям других столбцов • Записывается двумя вертикальными чертами (||) • Создает результирующий столбец, значения которого являются символьными выражениями 1 -18

Использование оператора конкатенации SQL> SELECT 2 FROM ename||job AS Использование оператора конкатенации SQL> SELECT 2 FROM ename||job AS "Employees" emp; Employees ---------KINGPRESIDENT BLAKEMANAGER CLARKMANAGER JONESMANAGER MARTINSALESMAN ALLENSALESMAN. . . 14 rows selected. 1 -19

Строковые литералы • Литерал – это символ, строка или число, включенные в список SELECT. Строковые литералы • Литерал – это символ, строка или число, включенные в список SELECT. • Темпоральные и символьные данные должны быть заключены в одинарные кавычки. • Каждая строка выводится один раз для каждой возвращаемой строки таблицы. 1 -20

Использование литералов SQL> SELECT ename ||' '||'is a'||' '||job 2 AS Использование литералов SQL> SELECT ename ||' '||'is a'||' '||job 2 AS "Employee Details" 3 FROM emp; Employee Details ------------KING is a PRESIDENT BLAKE is a MANAGER CLARK is a MANAGER JONES is a MANAGER MARTIN is a SALESMAN. . . 14 rows selected. 1 -21

Дублирующиеся строка По умолчанию выводятся все строки, полученные в результате выборки, включая дублирующиеся SQL> Дублирующиеся строка По умолчанию выводятся все строки, полученные в результате выборки, включая дублирующиеся SQL> SELECT deptno 2 FROM emp; DEPTNO ----10 30 10 20. . . 14 rows selected. 1 -22

Исключение дублирующихся строк Исключение дубликатов производится путем включения ключевого слова DISTINCT SQL> SELECT DISTINCT Исключение дублирующихся строк Исключение дубликатов производится путем включения ключевого слова DISTINCT SQL> SELECT DISTINCT deptno 2 FROM emp; DEPTNO ----10 20 30 1 -23

Взаимодействие SQL and SQL*Plus Выражения SQL Буфер Выражения SQL Сервер SQL*Plus Команды SQL*Plus Форматированный Взаимодействие SQL and SQL*Plus Выражения SQL Буфер Выражения SQL Сервер SQL*Plus Команды SQL*Plus Форматированный отчет 1 -24 Результаты запроса

Сравнение выражений SQL и команд SQL*Plus SQL • Язык • Стандарт ANSI • Ключевые Сравнение выражений SQL и команд SQL*Plus SQL • Язык • Стандарт ANSI • Ключевые слова не могут быть сокращены • Выражения взаимодействуют с данными и таблицами в БД SQL statements 1 -25 SQL buffer SQL*Plus • Среда • Разработка Oracle • Ключевые слова могут быть сокращены • Команды не позволяют манипулировать данными БД SQL*Plus commands SQL*Plus buffer

Обзор SQL*Plus • Вход в SQL*Plus. • Просмотр структуры таблиц. • Редактирование выражений SQL. Обзор SQL*Plus • Вход в SQL*Plus. • Просмотр структуры таблиц. • Редактирование выражений SQL. • Выполнение выражений SQL из SQL*Plus. • Запись и добавление выражений SQL в файлы. • Запуск сохраненных файлов. • Загрузка из файлов в буфер с возможностью редактирования. 1 -26

Вход SQL*Plus • Из Windows • В командной строке: sqlplus [username[/password [@database]]] 1 -27 Вход SQL*Plus • Из Windows • В командной строке: sqlplus [username[/password [@database]]] 1 -27

Вывод структуры таблиц Используйте команду SQL*Plus DESCRIBE для вывода структуры таблицы. DESC[RIBE] tablename 1 Вывод структуры таблиц Используйте команду SQL*Plus DESCRIBE для вывода структуры таблицы. DESC[RIBE] tablename 1 -28

Вывод структуры таблицы SQL> DESCRIBE dept Name Null? ---------DEPTNO NOT NULL DNAME LOC 1 Вывод структуры таблицы SQL> DESCRIBE dept Name Null? ---------DEPTNO NOT NULL DNAME LOC 1 -29 Type ------NUMBER(2) VARCHAR 2(14) VARCHAR 2(13)

Команды редактирования SQL*Plus • A[PPEND] text • C[HANGE] / old / new • C[HANGE] Команды редактирования SQL*Plus • A[PPEND] text • C[HANGE] / old / new • C[HANGE] / text / • CL[EAR] BUFF[ER] • DEL n • DEL m n 1 -30

Команды редактирования SQL*Plus • I[NPUT] text • L[IST] n • L[IST] m n • Команды редактирования SQL*Plus • I[NPUT] text • L[IST] n • L[IST] m n • R[UN] • n text • 0 text 1 -31

Файловые команды SQL*Plus • SAVE filename • GET filename • START filename • @ Файловые команды SQL*Plus • SAVE filename • GET filename • START filename • @ filename • EDIT filename • SPOOL filename 1 -32

Выводы SELECT FROM [DISTINCT] {*, column[alias], . . . } table; Используйте SQL*Plus в Выводы SELECT FROM [DISTINCT] {*, column[alias], . . . } table; Используйте SQL*Plus в качестве среды для: • Запуска выражений SQL • Редактирования выражений SQL 1 -33