SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Модуль 4:SQL – запросы Александр Бабич Alexander.taurus@gmail.com
О чемпойдетречь Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM Запросы на добавление, обновление, удаление, создание таблицы
Урок 1: Что такое SQL Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM
Что такое SQL StructuredQueryLanguage — язык структурированных запросов универсальный язык, для создания, модификации и управления данными в реляционных БД 70-е - средствоработы конечного пользователя не являетсяязыкомпрограммирования! Но есть возможность процедурных расширений
Microsoft Access и SQL поддержкадвухстандартовSQL: ANSI MS Jet SQL Отличия: разные наборы зарезервированных слов и типов данных разные правила для оператора Between … And … разные подстановочные знаки оператора Like (? и _, * и %) JetSQL - разрешается группировка и сортировка по выражениям JetSQL – более сложные выражения и дополнительные инструкции
«Общие» инструкции
Операторы  Большинство операторов сравнения совпадают: =, <, <=, > и => Исключение составляет оператор неравенства ! = в ANSI SQL  <> в Jet SQL
Функции и операторы
Новинки Jet SQL
Типы данных
Подстановочные знаки
Разделители и символы запятые используются для разделения членов списков Имя, Фамилия, Отчество, Год рождения, Адрес, Город, Индекс; для задания имен полей, которые содержат пробелы применяются квадратные скобки [Дата размещения]; если в запрос включены поля нескольких таблиц, то включается полное имя поля состоит из двух частей: имени таблицы и имени поля, между которыми используется точка Заказы. КодЗаказа; строки заключаются как в одиночные('), так и в двойные кавычки ( ") при использовании инструкций SQL в процедурах VBA рекомендуется ставить одиночные кавычки в конце инструкции Jet SQL обязательно ставится точка с запятой;
Создание SQL-запросов
ИнструкцияSELECT SELECT [предикат] { * | таблица.* | [таблица.]поле_1 [AS псевдоним_1] [, [таблица.]поле_2 [AS псевдоним_2] [,...]]}FROM выражение [, ...] [IN внешняяБазаДанных][WHERE...][GROUP BY...][HAVING...][ORDER BY...][WITH OWNERACCESS OPTION] Подробности
Примеры SELECT TOP 25 * FROM Заказы IN "С:ои Документыорей.mdb"; SELECT Заказано.*, Заказы.КодКлиента, Заказы.ДатаИсполнения,Заказы.КодЗаказаFROM Заказы, ЗаказаноWHERE (((Заказы.ДатаИсполнения)>=#1/1/1998#) AND((Заказы.КодЗаказа)=[Заказано].[КодЗаказа])) OR(((Заказы.ДатаИсполнения) Is Null) AND((Заказы.КодЗаказа)=[Заказано].[КодЗаказа])); SELECT Клиенты.Название, Клиенты.Город, Клиенты.Адрес FROM КлиентыWHERE (((Клиенты.Страна)IN ('США','Канада',Мексика')));
Исключение повторений DISTINCTROW и DISTINCT в инструкции SELECT позволяют исключить из результирующего множества повторяющиеся строки DISTINCTROW – для  сравнения записей применяются все поля исходной таблицы независимо от того, какие из полей включены в запрос DISTINCT – для сравнения записей используются только те поля, которые включены в запрос
Аггрегирующие функции AVG() – среднее значение COUNT() – количество строк FIRST() – первое значение LAST() – последнее значение MAX() – наибольшее значение MIN() – наименьшее значение SUM() – сумма
Скалярные функции UCASE() – верхний регистр LCASE() – нижний регистр MID() – извлечение символов из текста LEN() – длина текста ROUND() – округление значения NOW() – текущая дата-время FORMAT() – форматирование значения
Примеры SELECT Count(*) AS [Number of Invoices] FROM tblInvoices SELECT Avg(Amount) AS [Average Invoice Amount] FROM tblInvoices SELECT Last(Amount) AS [Last Invoice Amount] FROM tblInvoices
Урок 2: SQL-запросы в Access Запросы на добавление, обновление, удаление, создание таблицы
Запросы на добавление INSERT INTO назначение [(поле_1[, поле_2[, ...]])] [IN внешняяБазаДанных]SELECT [источник.]поле_1[, поле_2[, ...]FROM выражение [, ...] [IN внешняяБазаДанных][WHERE...][GROUP BY...][HAVING...][ORDER BY...][WITH OWNERACCESS OPTION] Примеры: INSERT INTO Доставка (Название, Телефон)VALUES («Аэрофлот", "(095) 211-9988"); INSERT INTO Временная ( КодКлиента, [Стоимостьзаказа] )SELECT Заказы.КодКлиента, sum([Цена]*[Количество])FROM Заказано, ЗаказыIN "С:ои ДокументыataBasel.mdb"WHERE («Заказано.КодЗаказа)=[Заказы].[КодЗаказа]))GROUP BY Заказы.КодКлиентаORDER BY Sum([Цена]*[Количество])DESC;
Запросы на обновление UPDATE таблица SET поле=новоеЗначение WHERE условиеОтбора Примеры: UPDATE [Товары] SET [Товары].ПоставкиПрекращены = False WHERE ((([Товары].ПоставкиПрекращены)=Тruе)); UPDATE Заказы INNER JOIN Заказано ON Заказы.КодЗаказа = Заказано.КодЗаказа SET Заказано.Скидка = 0 WHERE (((Заказы-ДатаИсполнения) Is Null));
Запросы на удаление DELETE [таблица.]*, поле1 [,...] FROM таблицаWHERE условиеОтбора Пример: DELETE [Товары].ПоставкиПрекращены FROM [Товары] WHERE ((([Товары].ПоставкиПрекращены)=Тruе)); DROP {TABLE таблица | INDEX индексON таблица| PROCEDURE процедура | VIEW представление}
Запросы на создание таблицы CREATE [TEMPORARY] TABLE таблица (поле_1 тип [(размер)][NOT NULL] [WITH COMPRESSION | WITH COMP][индекс_1] [, поле_2 тип [(размер)] [NOT NULL][индекс_2] [, ...]] [, CONSTRAINT составнойИндекс [, ...]])
Упражнение Попробовать создать запросы для вашей БД на основе SQL
Подводимитоги Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM Запросы на добавление, обновление, удаление, создание таблицы
Вопросы?
Контрольные вопросы Какие стандарты SQL поддерживаются Microsoft Access? В чем различия между ними? Как создать SQL-запрос в Access? Перечислите типы SQL-запросов Access
Использованные источники Иллюстрированный самоучитель по MicrosoftAccesshttp://www.taurion.ru/access Microsoft Accesshttp://matveev.kiev.ua/macceass/index.htm SQLhttp://ru.wikipedia.org/wiki/SQL SQL Functionshttp://www.w3schools.com/sql/sql_functions.asp

Weitere ähnliche Inhalte

Was ist angesagt?

Web осень 2013 лекция 6
Web осень 2013 лекция 6Web осень 2013 лекция 6
Web осень 2013 лекция 6Technopark
 
Advanced Sql Injection
Advanced Sql InjectionAdvanced Sql Injection
Advanced Sql InjectionDmitry Evteev
 
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьСергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьTanya Denisyuk
 
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...Technopark
 
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"Technopark
 
Razrabotka testovykh primerov_ts
Razrabotka testovykh primerov_tsRazrabotka testovykh primerov_ts
Razrabotka testovykh primerov_tsNickola14
 
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...Technopark
 
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)Dmitry Evteev
 
СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"Technopark
 
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".Badoo Development
 
Web осень 2013 лекция 8
Web осень 2013 лекция 8Web осень 2013 лекция 8
Web осень 2013 лекция 8Technopark
 
СУБД осень 2012 лекция 8
СУБД осень 2012 лекция 8СУБД осень 2012 лекция 8
СУБД осень 2012 лекция 8Technopark
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...Ontico
 
0045
00450045
0045JIuc
 
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"Technopark
 
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...DevDay
 

Was ist angesagt? (18)

PT Hackday#2
PT Hackday#2PT Hackday#2
PT Hackday#2
 
Web осень 2013 лекция 6
Web осень 2013 лекция 6Web осень 2013 лекция 6
Web осень 2013 лекция 6
 
Advanced Sql Injection
Advanced Sql InjectionAdvanced Sql Injection
Advanced Sql Injection
 
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьСергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
СУБД 2013 Лекция №4 "Расширенные возможности работы с базами данных. Триггеры...
 
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
СУБД 2013 Лекция №7 "Оптимизация запросов и индексирование"
 
Razrabotka testovykh primerov_ts
Razrabotka testovykh primerov_tsRazrabotka testovykh primerov_ts
Razrabotka testovykh primerov_ts
 
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
СУБД 2013 Лекция №6 "Профилирование запросов. Сложноструктурированные SQL-зап...
 
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)
Chaos Constructions HackQuest 2010 Full Disclosure (мастер-класс)
 
PT Hackday#2
PT Hackday#2PT Hackday#2
PT Hackday#2
 
СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"СУБД 2013 Лекция №5 "Определение узких мест"
СУБД 2013 Лекция №5 "Определение узких мест"
 
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
Доклад Сергея Аверина на CodeFest-2013. "MySQL+HandlerSocket=NoSQL".
 
Web осень 2013 лекция 8
Web осень 2013 лекция 8Web осень 2013 лекция 8
Web осень 2013 лекция 8
 
СУБД осень 2012 лекция 8
СУБД осень 2012 лекция 8СУБД осень 2012 лекция 8
СУБД осень 2012 лекция 8
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить / Сергей Авер...
 
0045
00450045
0045
 
СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"СУБД 2013 Лекция №9 "Безопасность баз данных"
СУБД 2013 Лекция №9 "Безопасность баз данных"
 
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...
Шаблонизация sql, или история еще одного велосипеда, в трех частях, Алексей Р...
 

Andere mochten auch

UML: Первое знакомство
UML: Первое знакомствоUML: Первое знакомство
UML: Первое знакомствоAlexander Babich
 
Конкурс талантов - 15 группа (2013)
Конкурс талантов - 15 группа (2013)Конкурс талантов - 15 группа (2013)
Конкурс талантов - 15 группа (2013)Alexander Babich
 
Учиться, пока не поздно!
Учиться, пока не поздно!Учиться, пока не поздно!
Учиться, пока не поздно!Alexander Babich
 
Создаем электронный учебник
Создаем электронный учебникСоздаем электронный учебник
Создаем электронный учебникAlexander Babich
 

Andere mochten auch (8)

Access 06
Access 06Access 06
Access 06
 
UML: Первое знакомство
UML: Первое знакомствоUML: Первое знакомство
UML: Первое знакомство
 
PowerPoint
PowerPointPowerPoint
PowerPoint
 
Конкурс талантов - 15 группа (2013)
Конкурс талантов - 15 группа (2013)Конкурс талантов - 15 группа (2013)
Конкурс талантов - 15 группа (2013)
 
Vba 08
Vba 08Vba 08
Vba 08
 
Учиться, пока не поздно!
Учиться, пока не поздно!Учиться, пока не поздно!
Учиться, пока не поздно!
 
MindMapping03
MindMapping03MindMapping03
MindMapping03
 
Создаем электронный учебник
Создаем электронный учебникСоздаем электронный учебник
Создаем электронный учебник
 

Ähnlich wie Access 04

лабораторная работа 2
лабораторная работа 2лабораторная работа 2
лабораторная работа 2student_kai
 
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)Andrey Gershun
 
лабораторная работа 8
лабораторная работа 8лабораторная работа 8
лабораторная работа 8student_kai
 
Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0Alexey Kovyazin
 
Разработка бизнес приложений (5)
Разработка бизнес приложений (5)Разработка бизнес приложений (5)
Разработка бизнес приложений (5)Alexander Gornik
 
0039
00390039
0039JIuc
 
21 - Базы данных. Вложенные запросы
21 - Базы данных. Вложенные запросы21 - Базы данных. Вложенные запросы
21 - Базы данных. Вложенные запросыRoman Brovko
 
0044
00440044
0044JIuc
 
Управление Данными. Лекция 7
Управление Данными. Лекция 7Управление Данными. Лекция 7
Управление Данными. Лекция 7Dmitriy Krukov
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьТо, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьphp-user-group-minsk
 
Оптимизация SQL-запросов
Оптимизация SQL-запросовОптимизация SQL-запросов
Оптимизация SQL-запросовtssoft
 
0042
00420042
0042JIuc
 
Базы данных лекция №8
Базы данных лекция №8Базы данных лекция №8
Базы данных лекция №8Vitaliy Pak
 
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQL
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQLCodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQL
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQLCodeFest
 

Ähnlich wie Access 04 (20)

лабораторная работа 2
лабораторная работа 2лабораторная работа 2
лабораторная работа 2
 
лабраб 7
лабраб 7лабраб 7
лабраб 7
 
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)
AlaSQL - SQL библиотека на JavaScript (выступление на PiterJS)
 
лабораторная работа 8
лабораторная работа 8лабораторная работа 8
лабораторная работа 8
 
Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0Новые возможности языка SQL в Firebird 3.0
Новые возможности языка SQL в Firebird 3.0
 
Разработка бизнес приложений (5)
Разработка бизнес приложений (5)Разработка бизнес приложений (5)
Разработка бизнес приложений (5)
 
0039
00390039
0039
 
Class queries
Class queriesClass queries
Class queries
 
21 - Базы данных. Вложенные запросы
21 - Базы данных. Вложенные запросы21 - Базы данных. Вложенные запросы
21 - Базы данных. Вложенные запросы
 
0044
00440044
0044
 
Agile Instrumentation
Agile InstrumentationAgile Instrumentation
Agile Instrumentation
 
My sql 0
My sql 0My sql 0
My sql 0
 
SQL Server Denali
SQL Server DenaliSQL Server Denali
SQL Server Denali
 
Управление Данными. Лекция 7
Управление Данными. Лекция 7Управление Данными. Лекция 7
Управление Данными. Лекция 7
 
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьТо, что вы хотели знать о HandlerSocket, но не смогли нагуглить
То, что вы хотели знать о HandlerSocket, но не смогли нагуглить
 
Оптимизация SQL-запросов
Оптимизация SQL-запросовОптимизация SQL-запросов
Оптимизация SQL-запросов
 
0042
00420042
0042
 
Базы данных лекция №8
Базы данных лекция №8Базы данных лекция №8
Базы данных лекция №8
 
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQL
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQLCodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQL
CodeFest 2013. Аверин С. — MySQL+HandlerSocket=NoSQL
 
Yserver
YserverYserver
Yserver
 

Mehr von Alexander Babich

Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Alexander Babich
 
M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...Alexander Babich
 
M365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиM365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиAlexander Babich
 
M365: Завершення
M365: ЗавершенняM365: Завершення
M365: ЗавершенняAlexander Babich
 
M365: рекомендації
M365: рекомендаціїM365: рекомендації
M365: рекомендаціїAlexander Babich
 
M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365Alexander Babich
 
M365: Роздаткові матеріали
M365: Роздаткові матеріалиM365: Роздаткові матеріали
M365: Роздаткові матеріалиAlexander Babich
 
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxMeet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxAlexander Babich
 
Ви обрали професію програміста
Ви обрали професію програмістаВи обрали професію програміста
Ви обрали професію програмістаAlexander Babich
 
Змішане навчання в ППФК
Змішане навчання в ППФКЗмішане навчання в ППФК
Змішане навчання в ППФКAlexander Babich
 
Формування професійних інтересів студентів
Формування професійних інтересів студентівФормування професійних інтересів студентів
Формування професійних інтересів студентівAlexander Babich
 
День відкритих дверей' 2021
День відкритих дверей' 2021День відкритих дверей' 2021
День відкритих дверей' 2021Alexander Babich
 
06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure06. Обучение и сертификация по Azure
06. Обучение и сертификация по AzureAlexander Babich
 
05.Внедрение Azure
05.Внедрение Azure05.Внедрение Azure
05.Внедрение AzureAlexander Babich
 
04.Службы Azure - подробнее
04.Службы Azure - подробнее04.Службы Azure - подробнее
04.Службы Azure - подробнееAlexander Babich
 
03.Сколько стоит облако
03.Сколько стоит облако03.Сколько стоит облако
03.Сколько стоит облакоAlexander Babich
 

Mehr von Alexander Babich (20)

Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)Актуальні курси з мого арсеналу (Бабич О.В.)
Актуальні курси з мого арсеналу (Бабич О.В.)
 
M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...M365: Word, Excel, PowerPoint...
M365: Word, Excel, PowerPoint...
 
M365: Інші сервіси та застосунки
M365: Інші сервіси та застосункиM365: Інші сервіси та застосунки
M365: Інші сервіси та застосунки
 
M365: OneDrive
M365: OneDriveM365: OneDrive
M365: OneDrive
 
M365: Завершення
M365: ЗавершенняM365: Завершення
M365: Завершення
 
M365: SharePoint
M365: SharePointM365: SharePoint
M365: SharePoint
 
M365: рекомендації
M365: рекомендаціїM365: рекомендації
M365: рекомендації
 
M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365M365: Огляд платформи Microsoft365
M365: Огляд платформи Microsoft365
 
M365: Вступ
M365: ВступM365: Вступ
M365: Вступ
 
M365: Роздаткові матеріали
M365: Роздаткові матеріалиM365: Роздаткові матеріали
M365: Роздаткові матеріали
 
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptxMeet&Code - VR, метавсесвіт та криптовалюти (1).pptx
Meet&Code - VR, метавсесвіт та криптовалюти (1).pptx
 
Ви обрали професію програміста
Ви обрали професію програмістаВи обрали професію програміста
Ви обрали професію програміста
 
Змішане навчання в ППФК
Змішане навчання в ППФКЗмішане навчання в ППФК
Змішане навчання в ППФК
 
Формування професійних інтересів студентів
Формування професійних інтересів студентівФормування професійних інтересів студентів
Формування професійних інтересів студентів
 
День відкритих дверей' 2021
День відкритих дверей' 2021День відкритих дверей' 2021
День відкритих дверей' 2021
 
Спробуйте Python
Спробуйте PythonСпробуйте Python
Спробуйте Python
 
06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure06. Обучение и сертификация по Azure
06. Обучение и сертификация по Azure
 
05.Внедрение Azure
05.Внедрение Azure05.Внедрение Azure
05.Внедрение Azure
 
04.Службы Azure - подробнее
04.Службы Azure - подробнее04.Службы Azure - подробнее
04.Службы Azure - подробнее
 
03.Сколько стоит облако
03.Сколько стоит облако03.Сколько стоит облако
03.Сколько стоит облако
 

Access 04

  • 1. Модуль 4:SQL – запросы Александр Бабич Alexander.taurus@gmail.com
  • 2. О чемпойдетречь Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM Запросы на добавление, обновление, удаление, создание таблицы
  • 3. Урок 1: Что такое SQL Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM
  • 4. Что такое SQL StructuredQueryLanguage — язык структурированных запросов универсальный язык, для создания, модификации и управления данными в реляционных БД 70-е - средствоработы конечного пользователя не являетсяязыкомпрограммирования! Но есть возможность процедурных расширений
  • 5. Microsoft Access и SQL поддержкадвухстандартовSQL: ANSI MS Jet SQL Отличия: разные наборы зарезервированных слов и типов данных разные правила для оператора Between … And … разные подстановочные знаки оператора Like (? и _, * и %) JetSQL - разрешается группировка и сортировка по выражениям JetSQL – более сложные выражения и дополнительные инструкции
  • 7. Операторы Большинство операторов сравнения совпадают: =, <, <=, > и => Исключение составляет оператор неравенства ! = в ANSI SQL <> в Jet SQL
  • 12. Разделители и символы запятые используются для разделения членов списков Имя, Фамилия, Отчество, Год рождения, Адрес, Город, Индекс; для задания имен полей, которые содержат пробелы применяются квадратные скобки [Дата размещения]; если в запрос включены поля нескольких таблиц, то включается полное имя поля состоит из двух частей: имени таблицы и имени поля, между которыми используется точка Заказы. КодЗаказа; строки заключаются как в одиночные('), так и в двойные кавычки ( ") при использовании инструкций SQL в процедурах VBA рекомендуется ставить одиночные кавычки в конце инструкции Jet SQL обязательно ставится точка с запятой;
  • 14. ИнструкцияSELECT SELECT [предикат] { * | таблица.* | [таблица.]поле_1 [AS псевдоним_1] [, [таблица.]поле_2 [AS псевдоним_2] [,...]]}FROM выражение [, ...] [IN внешняяБазаДанных][WHERE...][GROUP BY...][HAVING...][ORDER BY...][WITH OWNERACCESS OPTION] Подробности
  • 15. Примеры SELECT TOP 25 * FROM Заказы IN "С:ои Документыорей.mdb"; SELECT Заказано.*, Заказы.КодКлиента, Заказы.ДатаИсполнения,Заказы.КодЗаказаFROM Заказы, ЗаказаноWHERE (((Заказы.ДатаИсполнения)>=#1/1/1998#) AND((Заказы.КодЗаказа)=[Заказано].[КодЗаказа])) OR(((Заказы.ДатаИсполнения) Is Null) AND((Заказы.КодЗаказа)=[Заказано].[КодЗаказа])); SELECT Клиенты.Название, Клиенты.Город, Клиенты.Адрес FROM КлиентыWHERE (((Клиенты.Страна)IN ('США','Канада',Мексика')));
  • 16. Исключение повторений DISTINCTROW и DISTINCT в инструкции SELECT позволяют исключить из результирующего множества повторяющиеся строки DISTINCTROW – для сравнения записей применяются все поля исходной таблицы независимо от того, какие из полей включены в запрос DISTINCT – для сравнения записей используются только те поля, которые включены в запрос
  • 17. Аггрегирующие функции AVG() – среднее значение COUNT() – количество строк FIRST() – первое значение LAST() – последнее значение MAX() – наибольшее значение MIN() – наименьшее значение SUM() – сумма
  • 18. Скалярные функции UCASE() – верхний регистр LCASE() – нижний регистр MID() – извлечение символов из текста LEN() – длина текста ROUND() – округление значения NOW() – текущая дата-время FORMAT() – форматирование значения
  • 19. Примеры SELECT Count(*) AS [Number of Invoices] FROM tblInvoices SELECT Avg(Amount) AS [Average Invoice Amount] FROM tblInvoices SELECT Last(Amount) AS [Last Invoice Amount] FROM tblInvoices
  • 20. Урок 2: SQL-запросы в Access Запросы на добавление, обновление, удаление, создание таблицы
  • 21. Запросы на добавление INSERT INTO назначение [(поле_1[, поле_2[, ...]])] [IN внешняяБазаДанных]SELECT [источник.]поле_1[, поле_2[, ...]FROM выражение [, ...] [IN внешняяБазаДанных][WHERE...][GROUP BY...][HAVING...][ORDER BY...][WITH OWNERACCESS OPTION] Примеры: INSERT INTO Доставка (Название, Телефон)VALUES («Аэрофлот", "(095) 211-9988"); INSERT INTO Временная ( КодКлиента, [Стоимостьзаказа] )SELECT Заказы.КодКлиента, sum([Цена]*[Количество])FROM Заказано, ЗаказыIN "С:ои ДокументыataBasel.mdb"WHERE («Заказано.КодЗаказа)=[Заказы].[КодЗаказа]))GROUP BY Заказы.КодКлиентаORDER BY Sum([Цена]*[Количество])DESC;
  • 22. Запросы на обновление UPDATE таблица SET поле=новоеЗначение WHERE условиеОтбора Примеры: UPDATE [Товары] SET [Товары].ПоставкиПрекращены = False WHERE ((([Товары].ПоставкиПрекращены)=Тruе)); UPDATE Заказы INNER JOIN Заказано ON Заказы.КодЗаказа = Заказано.КодЗаказа SET Заказано.Скидка = 0 WHERE (((Заказы-ДатаИсполнения) Is Null));
  • 23. Запросы на удаление DELETE [таблица.]*, поле1 [,...] FROM таблицаWHERE условиеОтбора Пример: DELETE [Товары].ПоставкиПрекращены FROM [Товары] WHERE ((([Товары].ПоставкиПрекращены)=Тruе)); DROP {TABLE таблица | INDEX индексON таблица| PROCEDURE процедура | VIEW представление}
  • 24. Запросы на создание таблицы CREATE [TEMPORARY] TABLE таблица (поле_1 тип [(размер)][NOT NULL] [WITH COMPRESSION | WITH COMP][индекс_1] [, поле_2 тип [(размер)] [NOT NULL][индекс_2] [, ...]] [, CONSTRAINT составнойИндекс [, ...]])
  • 25. Упражнение Попробовать создать запросы для вашей БД на основе SQL
  • 26. Подводимитоги Ввод SQL выражений. Основные конструкции языка Оператор SELECT . Построение простых запросов с условиями отбора Статистические функции COUNT, FIRST, LAST Статистические функции MIN, MAX, AVG. Функция SUM Запросы на добавление, обновление, удаление, создание таблицы
  • 28. Контрольные вопросы Какие стандарты SQL поддерживаются Microsoft Access? В чем различия между ними? Как создать SQL-запрос в Access? Перечислите типы SQL-запросов Access
  • 29. Использованные источники Иллюстрированный самоучитель по MicrosoftAccesshttp://www.taurion.ru/access Microsoft Accesshttp://matveev.kiev.ua/macceass/index.htm SQLhttp://ru.wikipedia.org/wiki/SQL SQL Functionshttp://www.w3schools.com/sql/sql_functions.asp