Разработка запросов к базе данных

Правила формирования списка:

•* для выбора всех столбцов

•ИмяТаблицы.ИмяПоля

•+, -, *, /, ( ), константы, стандартные функции

•агрегатные функции:

COUNT – количество строк

SUM – итоговые суммы

AVG – среднее значение

MAX – максимальное значение

MIN – минимальное значение

•As НовоеИмя

Содержимое разработки

Разработка запросов к базе данных План работы: Стандартный язык запросов SQL. Выборка данных. Манипулирование данными. Определение данных. Примеры запросов к базе данных. SQL в формах, отчетах и программах MS Access

Разработка запросов к базе данных

План работы:

  • Стандартный язык запросов SQL.
  • Выборка данных.
  • Манипулирование данными.
  • Определение данных.
  • Примеры запросов к базе данных.
  • SQL в формах, отчетах и программах MS Access

Стандартный язык запросов SQL 1989г. ANSI (American National Standards Institute) SQL – официальный международный стандарт непроцедурного языка для формирования запросов к базам данных. Не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным. Предоставляет развитые возможности как конечным пользователям, так и специалистам в области обработки данных. Многие современные СУБД могут подключаться к входным SQL-подсистемам с помощью технологии ODBC (Open Database Connectivity). Способен служить средством разработки масштабируемых систем типа «клиент-сервер».

Стандартный язык запросов SQL

1989г. ANSI (American National Standards Institute)

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

  • Не обладает функциями полноценного языка разработки, а ориентирован на доступ к данным.
  • Предоставляет развитые возможности как конечным пользователям, так и специалистам в области обработки данных.
  • Многие современные СУБД могут подключаться к входным SQL-подсистемам с помощью технологии ODBC (Open Database Connectivity).
  • Способен служить средством разработки масштабируемых систем типа «клиент-сервер».

Стандартный язык запросов SQL Представление для пользователей: в явной синтаксической форме; В форме меню, диалоговых сценариев или заполняемых пользователем таблиц. Основные функции: описание представления базы данных (ЯОД) - схема БД: Описание структуры БД и налагаемых на неё ограничений целостности. Ограничение доступа к данным и полномочий пользователям. Описание структуры БД и налагаемых на неё ограничений целостности. Ограничение доступа к данным и полномочий пользователям. Описание структуры БД и налагаемых на неё ограничений целостности. Ограничение доступа к данным и полномочий пользователям. выполнение операций манипулирования данными (ЯМД): Добавление, изменение и удаление записей в таблицы. Добавление, изменение и удаление записей в таблицы.

Стандартный язык запросов SQL

Представление для пользователей:

  • в явной синтаксической форме;
  • В форме меню, диалоговых сценариев или заполняемых пользователем таблиц.

Основные функции:

  • описание представления базы данных (ЯОД) - схема БД:
  • Описание структуры БД и налагаемых на неё ограничений целостности. Ограничение доступа к данным и полномочий пользователям.
  • Описание структуры БД и налагаемых на неё ограничений целостности. Ограничение доступа к данным и полномочий пользователям.
  • Описание структуры БД и налагаемых на неё ограничений целостности.
  • Ограничение доступа к данным и полномочий пользователям.
  • выполнение операций манипулирования данными (ЯМД):
  • Добавление, изменение и удаление записей в таблицы.
  • Добавление, изменение и удаление записей в таблицы.

Основные группы операторов языка SQL Операторы определения данных (DDL) CREATE –создание таблиц, индексов и представлений ALTER – изменение описания таблиц, индексов и представлений DROP – удаление таблиц, индексов и представлений Операторы манипулирования данными (DML) INSERT – добавление записей в таблицу UPDATE – изменение данных в таблице DELETE – удаление записей из таблицы SELECT – оператор выборки данных Выбирает данные не меняя содержимого БД

Основные группы операторов языка SQL

  • Операторы определения данных (DDL)

CREATE –создание таблиц, индексов и представлений

ALTER – изменение описания таблиц, индексов и представлений

DROP – удаление таблиц, индексов и представлений

  • Операторы манипулирования данными (DML)

INSERT – добавление записей в таблицу

UPDATE – изменение данных в таблице

DELETE – удаление записей из таблицы

  • SELECT – оператор выборки данных

Выбирает данные не меняя содержимого БД

Дополнительные группы операторов Средства администрирования GRAND, REVOKE и т.д. – создание системы защиты данных с помощью паролей и разграничения доступа групп пользователей Средства управления транзакциями COMMIT, ROLLBACK, SAVEPOINT – завершение операций, сохранение промежуточного и возвращение к исходному состоянию.

Дополнительные группы операторов

  • Средства администрирования

GRAND, REVOKE и т.д. – создание системы защиты данных с помощью паролей и разграничения доступа групп пользователей

  • Средства управления транзакциями

COMMIT, ROLLBACK, SAVEPOINT – завершение операций, сохранение промежуточного и возвращение к исходному состоянию.

Выборка данных SELECT – отбор и сортировка данных из одной или нескольких связанных таблиц по заданному критерию, выполнение расчетов и преобразование выбранных данных с помощью специальных функций. Не меняет структуру и содержимое БД! Синтаксис : SELECT [ ALL | DISTINCT | TOP  ЧИСЛО ]  FROM  [ WHERE ] [ GROPE  BY ] [ HAVING ] [ ORDER  BY [ASC|DESC]]

Выборка данных

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

  • Не меняет структуру и содержимое БД!

Синтаксис :

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ]

FROM

[ WHERE ]

[ GROPE BY ]

[ HAVING ]

[ ORDER BY [ASC|DESC]]

Выборка данных SELECT [ ALL | DISTINCT | TOP  ЧИСЛО  ]   ALL – отбор всех записей, удовлетворяющих условию отбора DISTINCT – повторяющиеся строки не включаются в результат выполнения запроса TOP  ЧИСЛО – задаёт число выводимых строк (начиная с первой)

Выборка данных

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ]

ALL – отбор всех записей, удовлетворяющих условию отбора

DISTINCT повторяющиеся строки не включаются в результат выполнения запроса

TOP ЧИСЛО задаёт число выводимых строк (начиная с первой)

– список полей или выражений, использующих агрегатные, математические и другие функции. Элементы списка разделятся запятой. Правила формирования списка: * для выбора всех столбцов ИмяТаблицы.ИмяПоля +, -, *, /, ( ), константы, стандартные функции агрегатные функции: COUNT – количество строк SUM – итоговые суммы AVG – среднее значение MAX – максимальное значение MIN – минимальное значение As НовоеИмя" width="640"

Выборка данных

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ] Результирующий набор данных

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

Элементы списка разделятся запятой.

Правила формирования списка:

  • * для выбора всех столбцов
  • ИмяТаблицы.ИмяПоля
  • +, -, *, /, ( ), константы, стандартные функции
  • агрегатные функции:

COUNT – количество строк

SUM – итоговые суммы

AVG – среднее значение

MAX – максимальное значение

MIN – минимальное значение

  • As НовоеИмя

Выборка данных Пример 1 Выбрать все данные из таблицы ЭКЗАМЕНЫ … SELECT * FROM ЭКЗАМЕНЫ

Выборка данных

Пример 1

Выбрать все данные из таблицы ЭКЗАМЕНЫ

SELECT *

FROM ЭКЗАМЕНЫ

Выборка данных Пример 2 Выбрать данные из БД для получения документа “Расписание экзаменов” в порядке следования столбцов Группа, Дисциплина, Дата .… SELECT Группа, Дисциплина, Дата FROM ЭКЗАМЕНЫ

Выборка данных

Пример 2

Выбрать данные из БД для получения документа “Расписание экзаменов” в порядке следования столбцов Группа, Дисциплина, Дата .…

SELECT Группа, Дисциплина, Дата

FROM ЭКЗАМЕНЫ

Выборка данных Пример 3 Выбрать данные из БД для получения списка студентов в следующем виде в Группа, Фамилия И.О., НомЗачКн, Стипендия .… SELECT Группа, Фамилия + ‘ ‘ + Left(Имя,1) + ‘.’ + Left(Отчество,1) + ‘.’ As ‘Фамилия И.О.’ , НомЗачКн, Стипендия FROM СТУДЕНТЫ

Выборка данных

Пример 3

Выбрать данные из БД для получения списка студентов в следующем виде в Группа, Фамилия И.О., НомЗачКн, Стипендия .…

SELECT Группа, Фамилия + ‘ ‘ + Left(Имя,1) + ‘.’ + Left(Отчество,1) + ‘.’ As ‘Фамилия И.О.’ , НомЗачКн, Стипендия

FROM СТУДЕНТЫ

Выборка данных SELECT [ ALL | DISTINCT | TOP  ЧИСЛО ]  FROM  [ WHERE ] [ GROPE  BY ] [ HAVING ] [ ORDER  BY [ASC|DESC]] –  список полей или выражений, задающих условие сортировки. ASC – сортировка в порядке возрастания (можно не указывать), DESC – по убыванию.

Выборка данных

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ]

FROM

[ WHERE ]

[ GROPE BY ]

[ HAVING ]

[ ORDER BY [ASC|DESC]]

список полей или выражений, задающих условие сортировки.

ASC – сортировка в порядке возрастания (можно не указывать),

DESC – по убыванию.

Выборка данных Пример 1 Выбрать все данные из таблицы ЭКЗАМЕНЫ в порядке следования их во времени, Сведения об экзаменах, которые спланированы в один день, расположить в порядке возрастания номеров групп. SELECT * FROM ЭКЗАМЕНЫ ORDER BY Дата, Группа

Выборка данных

Пример 1

Выбрать все данные из таблицы ЭКЗАМЕНЫ в порядке следования их во времени, Сведения об экзаменах, которые спланированы в один день, расположить в порядке возрастания номеров групп.

SELECT *

FROM ЭКЗАМЕНЫ

ORDER BY Дата, Группа

Выборка данных Пример 2 Выбрать данные из БД для получения документа “Расписание экзаменов” в порядке следования столбцов Группа, Дисциплина, Дата . Сортировку данных выполнить в порядке следования групп, а внутри одной группы – по дате. SELECT Группа, Дисциплина, Дата FROM ЭКЗАМЕНЫ ORDER BY Группа, Дата

Выборка данных

Пример 2

Выбрать данные из БД для получения документа “Расписание экзаменов” в порядке следования столбцов Группа, Дисциплина, Дата . Сортировку данных выполнить в порядке следования групп, а внутри одной группы – по дате.

SELECT Группа, Дисциплина, Дата

FROM ЭКЗАМЕНЫ

ORDER BY Группа, Дата

Выборка данных Пример 3 Выбрать данные из БД для получения списка студентов в следующем виде в Группа, Фамилия И.О., НомЗачКн, Стипендия . Сортировку выполнить в порядке возрастания номера группы, а внутри группы – в алфавитном порядке следования данных столбца “ Фамилия И.О ”. SELECT Группа, Фамилия + ‘ ’+ Left( Имя,1) + ‘.’ + Left( Отчество,1) + ‘.’ AS ‘Фамилия И.О.’ , НомЗачКн, Стипендия  FROM СТУДЕНТЫ  ORDER BY Группа, Фамилия +‘ ’+ Left( Имя,1) + ‘.’ + Left( Отчество,1) + ‘.’

Выборка данных

Пример 3

Выбрать данные из БД для получения списка студентов в следующем виде в Группа, Фамилия И.О., НомЗачКн, Стипендия . Сортировку выполнить в порядке возрастания номера группы, а внутри группы – в алфавитном порядке следования данных столбца “ Фамилия И.О ”.

SELECT Группа, Фамилия + ‘ ’+ Left( Имя,1) + ‘.’ + Left( Отчество,1) + ‘.’ AS ‘Фамилия И.О.’ , НомЗачКн, Стипендия

FROM СТУДЕНТЫ

ORDER BY Группа, Фамилия +‘ ’+ Left( Имя,1) + ‘.’ + Left( Отчество,1) + ‘.’

Выборка данных SELECT [ ALL | DISTINCT | TOP  ЧИСЛО ]  FROM  [ WHERE ] [ GROPE  BY ] [ HAVING ] [ ORDER  BY [ASC|DESC]] список таблиц (в этом случае связи задаются в части WHERE ) или описание связей (внутренних или внешних) между таблицами.

Выборка данных

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ]

FROM

[ WHERE ]

[ GROPE BY ]

[ HAVING ]

[ ORDER BY [ASC|DESC]]

  • список таблиц (в этом случае связи задаются в части WHERE ) или описание связей (внутренних или внешних) между таблицами.

- логическое выражение, описывающее критерий отбора записей из источников данных. Правила формирования условных выражений : - можно использовать знаки арифметических (+, -, *, /) и логических (=, , , =, AND , OR , NOT ) операций, круглые скобки, константы, поля и функции, - к специальным операциям относятся: 1). проверка наличия значения в списке – IN (список значений). 2). проверка значения в заданном интервале – BETWEEN N1 and N2 . 3). проверка на соответствие заданной маске – LIKE ‘Маска’, где символ % ( * - для MS Access) заменяет любую последовательность символов, а символ подчёркивания ( ? - для MS Access) заменяет один любой символ, - проверку на наличие в поле пустого, неопределённого значения можно выполнить с помощью инструкции – IS NULL , обратная операция – IS NOT NULL позволит определить те записи, где заданное поле заполнено" width="640"

Выборка данных

FROM

[ WHERE ]

Условие отбора данных - логическое выражение, описывающее критерий отбора записей из источников данных.

Правила формирования условных выражений :

- можно использовать знаки арифметических (+, -, *, /) и логических (=, , , =, AND , OR , NOT ) операций, круглые скобки, константы, поля и функции,

- к специальным операциям относятся: 1). проверка наличия значения в списке – IN (список значений). 2). проверка значения в заданном интервале – BETWEEN N1 and N2 . 3). проверка на соответствие заданной маске – LIKE ‘Маска’, где символ % ( * - для MS Access) заменяет любую последовательность символов, а символ подчёркивания ( ? - для MS Access) заменяет один любой символ,

- проверку на наличие в поле пустого, неопределённого значения можно выполнить с помощью инструкции – IS NULL , обратная операция – IS NOT NULL позволит определить те записи, где заданное поле заполнено

Выборка данных Пример 4 Получить в порядке возрастания номеров список групп, которые сдают экзамены в текущем месяце. SELECT      Группа FROM ЭКЗАМЕНЫ WHERE MONTH (Дата) = MONTH (DATE()) AND  YEAR ( Дата ) =                 YEAR(DATE()) ORDER BY Группа  DISTINCT

Выборка данных

Пример 4

Получить в порядке возрастания номеров список групп, которые сдают экзамены в текущем месяце.

SELECT Группа

FROM ЭКЗАМЕНЫ

WHERE MONTH (Дата) = MONTH (DATE()) AND YEAR ( Дата ) = YEAR(DATE())

ORDER BY Группа

DISTINCT

Выборка данных SELECT [ ALL | DISTINCT | TOP  ЧИСЛО ]  FROM  [ WHERE ] [ GROPE  BY ] [ HAVING ] [ ORDER  BY [ASC|DESC]] список полей или выражений, задающих критерий формирования записей в группы (в группу включаются записи с совпадающими значениями столбцов, перечисленных в списке). логическое выражение, описывающее критерий отбора строк.

Выборка данных

SELECT [ ALL | DISTINCT | TOP ЧИСЛО ]

FROM

[ WHERE ]

[ GROPE BY ]

[ HAVING ]

[ ORDER BY [ASC|DESC]]

  • список полей или выражений, задающих критерий формирования записей в группы (в группу включаются записи с совпадающими значениями столбцов, перечисленных в списке).
  • логическое выражение, описывающее критерий отбора строк.

Выборка данных Пример 5 Подсчитать для каждой учебной группы количество студентов, получающих стипендию, а так же рассчитать сумму их стипендий, расположив строки результата в порядке убывания денежных сумм. SELECT  Группа , COUNT (*) AS Количество, SUM( Стипендия) AS Сумма FROM СТУДЕНТЫ WHERE Стипендия IS NOT NULL GROUP BY Группа ORDER BY SUM( Стипендия) DESC

Выборка данных

Пример 5

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

SELECT Группа , COUNT (*) AS Количество, SUM( Стипендия) AS Сумма

FROM СТУДЕНТЫ

WHERE Стипендия IS NOT NULL

GROUP BY Группа

ORDER BY SUM( Стипендия) DESC

Выборка данных Пример 6 Сведения о квартирах дома хранятся в таблице ДОМ ( Квартира, Подъезд, Этаж, Метров, Человек ). С помощью запроса рассчитать общую сумму оплаты услуг для каждой квартиры. Использовать следующие тарифы: за отопление одного квадратного метра – 10 рублей, за потребление воды одним человеком - 90 рублей, за пользование лифтом взимается 70 рублей с каждой квартиры, расположенной на этаже выше 3-го. Отсортировать строки по возрастанию номеров квартир.

Выборка данных

Пример 6

Сведения о квартирах дома хранятся в таблице

ДОМ ( Квартира, Подъезд, Этаж, Метров, Человек ).

С помощью запроса рассчитать общую сумму оплаты услуг для каждой квартиры. Использовать следующие тарифы:

за отопление одного квадратного метра – 10 рублей,

за потребление воды одним человеком - 90 рублей,

за пользование лифтом взимается 70 рублей с каждой квартиры, расположенной на этаже выше 3-го.

Отсортировать строки по возрастанию номеров квартир.

3, 70, 0) AS Сумма FROM ДОМ ORDER BY Квартира" width="640"

Выборка данных

Пример 6

SELECT Подъезд, Этаж, Квартира, Метров, Человек, Метров *10 + Человек *90 + IIF( Этаж 3, 70, 0) AS Сумма

FROM ДОМ

ORDER BY Квартира

Выборка данных из нескольких таблиц FROM  [ WHERE ] В среде СУБД Microsoft Access и Microsoft SQL Server внутренние и внешние связи между двумя таблицами можно задать с помощью следующей инструкции: Таблица1 { INNER | LEFT | RIGHT } JOIN Таблица2 ON Таблица1.ПолеСвязи = Таблица2.ПолеСвязи INNER указывает на внутреннюю связь, при которой в результирующий набор выбираются только те записи, в которых значения полей связи совпадают. Внешнее соединение таблиц ( LEFT – левое, RIGHT – правое) позволяет включить в результат запроса все строки из одной таблицы ( LEFT – из Таблицы1, RIGHT – из Таблицы2) и соответствующие им строки из второй таблицы.

Выборка данных из нескольких таблиц

FROM

[ WHERE ]

В среде СУБД Microsoft Access и Microsoft SQL Server внутренние и внешние связи между двумя таблицами можно задать с помощью следующей инструкции:

Таблица1 { INNER | LEFT | RIGHT } JOIN Таблица2

ON Таблица1.ПолеСвязи = Таблица2.ПолеСвязи

  • INNER указывает на внутреннюю связь, при которой в результирующий набор выбираются только те записи, в которых значения полей связи совпадают.
  • Внешнее соединение таблиц ( LEFT – левое, RIGHT – правое) позволяет включить в результат запроса все строки из одной таблицы ( LEFT – из Таблицы1, RIGHT – из Таблицы2) и соответствующие им строки из второй таблицы.

Выборка данных из нескольких таблиц Пример 7 Вывести список студентов ( Фамилия, Имя, Группа ), которые получили отличные оценки (сортировка по номеру группы, а внутри группы – в алфавитном порядке фамилий).  SELECT DISTINCT Фамилия , Имя , Группа FROM СТУДЕНТЫ INNER JOIN ОЦЕНКИ ON СТУДЕНТЫ.НомЗачКн  = ОЦЕНКИ.НомЗачКн WHERE Оценка=5 ORDER BY Группа , Фамилия , Имя

Выборка данных из нескольких таблиц

Пример 7

Вывести список студентов ( Фамилия, Имя, Группа ), которые получили отличные оценки (сортировка по номеру группы, а внутри группы – в алфавитном порядке фамилий).

SELECT DISTINCT Фамилия , Имя , Группа

FROM СТУДЕНТЫ INNER JOIN ОЦЕНКИ ON СТУДЕНТЫ.НомЗачКн = ОЦЕНКИ.НомЗачКн

WHERE Оценка=5

ORDER BY Группа , Фамилия , Имя

Выборка данных из нескольких таблиц Пример 8 Рассчитать средний балл сдачи экзаменов студентами 31 группы и представить данные в следующем виде (сортировку выполнить в алфавитном порядке фамилий). SELECT Фамилия  + ‘ ‘ + Имя As ‘Фамилия Имя’, ОЦЕНКИ.НомЗачКн, AVG(Оценка) As ‘Средний балл’ FROM СТУДЕНТЫ INNER JOIN ОЦЕНКИ ON СТУДЕНТЫ.НомЗачКн  = ОЦЕНКИ.НомЗачКн WHERE Оценка=5 ORDER BY Группа , Фамилия , Имя

Выборка данных из нескольких таблиц

Пример 8

Рассчитать средний балл сдачи экзаменов студентами 31 группы и представить данные в следующем виде (сортировку выполнить в алфавитном порядке фамилий).

SELECT Фамилия + ‘ ‘ + Имя As ‘Фамилия Имя’, ОЦЕНКИ.НомЗачКн, AVG(Оценка) As ‘Средний балл’

FROM СТУДЕНТЫ INNER JOIN ОЦЕНКИ ON СТУДЕНТЫ.НомЗачКн = ОЦЕНКИ.НомЗачКн

WHERE Оценка=5

ORDER BY Группа , Фамилия , Имя

Выборка данных из нескольких таблиц Пример 9 Салон оказывает услуги своим клиентам по ценам действующего прейскуранта. Данные по учёту хранятся в двух таблицах: ЦЕНЫ ( Услуга, Цена ) и РАБОТА ( Дата, Время, Мастер, Услуга ). С помощью запроса определите а). кто из мастеров сегодня выполнил услуг на большую сумму, б). какой вид услуг был самым популярным в прошлом году.

Выборка данных из нескольких таблиц

Пример 9

Салон оказывает услуги своим клиентам по ценам действующего прейскуранта. Данные по учёту хранятся в двух таблицах: ЦЕНЫ ( Услуга, Цена ) и РАБОТА ( Дата, Время, Мастер, Услуга ).

С помощью запроса определите

а). кто из мастеров сегодня выполнил услуг на большую сумму,

б). какой вид услуг был самым популярным в прошлом году.

Выборка данных из нескольких таблиц Пример 9 а). SELECT Мастер , SUM( Цена ) As Сумма FROM ЦЕНЫ INNER JOIN РАБОТА ON ЦЕНЫ.Услуга = РАБОТА.Услуга WHERE Дата = DATE() GROUP BY Мастер ORDER BY SUM( Цена ) DESC б). SELECT РАБОТА.Услуга , COUNT(*) As Число FROM ЦЕНЫ INNER JOIN РАБОТА ON ЦЕНЫ.Услуга = РАБОТА.Услуга WHERE YEAR( Дата ) = YEAR(DATE())-1 GROUP BY РАБОТА.Услуга ORDER BY COUNT(*) DESC

Выборка данных из нескольких таблиц

Пример 9

а).

SELECT Мастер , SUM( Цена ) As Сумма

FROM ЦЕНЫ INNER JOIN РАБОТА ON ЦЕНЫ.Услуга = РАБОТА.Услуга

WHERE Дата = DATE()

GROUP BY Мастер

ORDER BY SUM( Цена ) DESC

б).

SELECT РАБОТА.Услуга , COUNT(*) As Число

FROM ЦЕНЫ INNER JOIN РАБОТА ON ЦЕНЫ.Услуга = РАБОТА.Услуга

WHERE YEAR( Дата ) = YEAR(DATE())-1

GROUP BY РАБОТА.Услуга

ORDER BY COUNT(*) DESC

Манипулирование данными INSERT Добавление одной или нескольких записей с заполнением значениями всех или только некоторых полей таблицы. а). добавление одной записи с заданными значениями в полях INSERT INTO  [(Список полей)] VALUES (Список значений) Пример . Добавить новую запись в таблицу ЭКЗАМЕНЫ  INSERT  INTO ЭКЗАМЕНЫ (КодЭкзам, Дата, Дисциплина, Группа) VALUES (1245, #12.06.2006#, ‘Базы данных’, 35)

Манипулирование данными

INSERT

Добавление одной или нескольких записей с заполнением значениями всех или только некоторых полей таблицы.

а). добавление одной записи с заданными значениями в полях

INSERT INTO [(Список полей)] VALUES (Список значений)

Пример .

Добавить новую запись в таблицу ЭКЗАМЕНЫ

INSERT INTO ЭКЗАМЕНЫ (КодЭкзам, Дата, Дисциплина, Группа)

VALUES (1245, #12.06.2006#, ‘Базы данных’, 35)

Пример . Добавить в таблицу АРХИВ из таблицы СТУДЕНТЫ некоторые сведения о выпускниках факультета (т.е. о студентах с номером группы 50 ). INSERT INTO АРХИВ (НомЗачКн, Фамилия, Имя, Отчество, Группа) SELECT НомЗачКн, Фамилия, Имя, Отчество, Группа FROM СТУДЕНТЫ WHERE Группа50" width="640"

Манипулирование данными

INSERT

б). добавление одной или нескольких записей, отобранных из другой таблицы

INSERT INTO [(Список полей)] SELECT

Пример .

Добавить в таблицу АРХИВ из таблицы СТУДЕНТЫ некоторые сведения о выпускниках факультета (т.е. о студентах с номером группы 50 ).

INSERT INTO АРХИВ (НомЗачКн, Фамилия, Имя, Отчество, Группа)

SELECT НомЗачКн, Фамилия, Имя, Отчество, Группа

FROM СТУДЕНТЫ WHERE Группа50

Манипулирование данными UPDATE Обновление значений полей во всех или нескольких записях, удовлетворяющих заданному условию. UPDATE  SET  = ,  = , ... [ WHERE ]

Манипулирование данными

UPDATE

Обновление значений полей во всех или нескольких записях, удовлетворяющих заданному условию.

UPDATE

SET = , = , ...

[ WHERE ]

Манипулирование данными UPDATE Пример 1. Увеличить все цены прейскуранта (таблица ЦЕНЫ ) на 5% UPDATE ЦЕНЫ SET Цена = Цена*1.05 Пример 2. Заменить в поле Жанр таблицы ФИЛЬМЫ значение ‘Триллер’ на ‘Ужасы’. UPDATE ФИЛЬМЫ SET Жанр = ‘Ужасы’ WHERE Жанр = ‘Триллер’

Манипулирование данными

UPDATE

Пример 1.

Увеличить все цены прейскуранта (таблица ЦЕНЫ ) на 5%

UPDATE ЦЕНЫ SET Цена = Цена*1.05

Пример 2.

Заменить в поле Жанр таблицы ФИЛЬМЫ значение ‘Триллер’ на ‘Ужасы’.

UPDATE ФИЛЬМЫ SET Жанр = ‘Ужасы’ WHERE Жанр = ‘Триллер’

Манипулирование данными DELETE Удаление всех или нескольких записей, удовлетворяющих заданному условию. DELETE  [WHERE  ]

Манипулирование данными

DELETE

Удаление всех или нескольких записей, удовлетворяющих заданному условию.

DELETE

[WHERE ]

50 ). DELETE FROM СТУДЕНТЫ WHERE Группа50" width="640"

Манипулирование данными

DELETE

Пример 1.

Удалить все сведения о заказах, выполненных в прошлом году

DELETE FROM Заказы

WHERE YEAR( ДатаВыполн)= YEAR(DATE())-1

Пример 2.

Удалить все сведения о выпускниках из таблицы СТУДЕНТЫ (т.е. о студентах с номером группы 50 ).

DELETE FROM СТУДЕНТЫ WHERE Группа50

Сохранить у себя:
Разработка запросов к базе данных

Получите свидетельство о публикации сразу после загрузки работы



Получите бесплатно свидетельство о публикации сразу после добавления разработки