Логические выражения and, or, not, between, in

Отбор с применением логических выражений AND, OR. NOT. BETWEI

Предложение WHERE может содержать выражения, связанные логически* ми, такими как AND, OR, NOT, BETWEEN IN.

Использование AND, OR

Выдать записи, в случае, если возраст человека лежит в диапазоне больше 22 либо

больше 50.

Пример:

SELECT [Фамилия], Возраст

FROM Сотрудники

WHERE ((Возраст 22) And (Возраст 30)) Or Возраст 50;

Логические выражения and, or, not, between, in

Логические выражения and, or, not, between, in

Отбор с применением логических выражений IS NULL.

Используется в WHERE для отбора записей, в которых некое поле содержит з NULL (ничего нет).

Пример

Продемонстрировать фамилии сотрудников не имеющих телефона.

SELECT Фамилия, Телефон

FROM Сотрудники

Логические выражения and, or, not, between, in

WHERE Телефон IS NULL;

Сотрудники

Логические выражения and, or, not, between, in

Продемонстрировать фамилии сотрудников имеющих факс.

Логические выражения and, or, not, between, in

SELECT Фамилия, Факс FROM Сотрудники WHERE Факс IS NOT NULL; Сотрудники

Логические выражения and, or, not, between, in

Использование BETWEEN … AND / (NOT BETWEEN…AND).

Определяет принадлежность значения выражения указанному диапазону.

Синтаксис

SELECT имена полей

FROM имена таблиц

WHERE выражение [Not] Between значение1 And значение2;

1. Выдать записи, в случае, если возраст человека лежит в диапазоне от 22 до 30.

К примеру:

SELECT Фамилия, Возраст

FROM Сотрудники

WHERE Возраст BETWEEN 22 And 30;

Логические выражения and, or, not, between, in

Логические выражения and, or, not, between, in

2. Выдатьзаписи, в случае, если возраст человека НЕ лежит в диапазоне от 22 до 30.

Пример:

SELECT Фамилия], Возраст

FROM Сотрудники

Логические выражения and, or, not, between, in

WHERE Возраст NOT BETWEEN 22 And 30;

Логические выражения and, or, not, between, in

Использование IN (NOT IN)

Контролирует, сходится ли значение выражения с одним из элементов указанного перечня.

Синтаксис

SELECT имена полей

FROM имена таблиц

WHERE выражение [Not] In (значение1, значенпе2….)

1. Выдать записи, в случае, если возраст человека равен 18 либо 55.

Пример:

SELECT Фамилия, Возраст

FROM Сотрудники

WHERE Возраст IN (18,55);

Логические выражения and, or, not, between, in

Студенты

Логические выражения and, or, not, between, in

2. Выдать записи, в случае, если возраст человека НЕ равен 18 либо 55. Пример:

SELECT Фамилия, Возраст

FROM Сотрудники

WHERE Возраст NOT IN (18,55);

Логические выражения and, or, not, between, in

Студенты

Логические выражения and, or, not, between, in

3. Выдать расписание движения поездов по вокзалам.

Пример:

SELECT Вокзал, Направление, Сутки, Время FROM Расписание

WHERE Вокзал NOT IN (‘Киевский’); Поясните, какое расписание будет выдано?

Онератор LIKE

Употребляется для сравнения строкового выражения.

Синтаксис

SELECT имена полей

FROM имена таблиц

WHERE выражение Like пример

Элемент Описание

выражение Выражение SQL, применяемое в предложении WHERE.
пример Строчок, с которой сравнивается выражение.

Дополнительные сведения

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

Иванов) либо применять подстановочные символы для поиска диапазона значений (к примеру. Like Ив*)-

Оператор Likeиспользуется в выражении для сравнения значений поля со строковым выражением. К примеру, в случае, если в запросе SQL ввести Likeс*, запрос возвратит все значения поля, начинающиеся с буквы С. В запросе с параметрами возможно пригласить пользователя, указать искомый пример.

В следующем примере возвращаются эти, начинающихся с буквы «Р», за которой следуютлюбые буквы от «А» до «Д» и три цифры:

Like Р[А-Д]###

Следуюшая таблица содержит примеры применения оператора Like для тестирования

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

* — Любое количество, любых знаков
? — Один, любой знак

# — Одна, каждая цифра

Тип совпадения Пример Совпадение (True) Несовпадение (False)
Пара знаков а* а аа, аВа, аВВВа аВС
*ab* abc, AABB,Xab aZb, bac
Особый символ а[*]а а*а ааа
Пара знаков аb* abcdefg, abc cab, aab
Одиночный символ а?а ааа, аЗа, аВа аВВВа
Одиночная цифра а#а аОа, а 1а, а2а ааа, а 10а
Диапазон знаков [a-z] f,p,j 2,
Вне диапазона [!a-z] 9, , % b, a
Не цифра [!0-9светло синий А, а, , ~ 0, 1,9
Комб, выражение a[!b-m]# An9, azO, a99 abc, ajO

Работа с знаками даты

При указании довода Условие Отбора, знаки дат должны вводиться в американском формате, даже в том случае, если употребляется неамериканская версия ядра базы данных Jet. К примеру, дата 10 мая 1996 года записывается в РФ как 10.05.96, а в Соединенных Штатах как 5/10/96 Непременно заключите даты в знаки «решетки» (#), как продемонстрировано в следующих примерах.

Для отбора записей с данной датой в русском базе разрешённых необходимо использовать следующую инструкцию SQL:

SELECT *

FROM Заказы

WHERE светло синий = #5/10/96#;

Помимо этого, возможно использовать функцию DateValue, которая поддерживает западные стандарты, заданные в Микрософт Windows®. К примеру, для отбора записей в американской базе данных создайте текст программы:

SELECT *

FROM Заказы

WHERE ДатаИсполнения = DateValue(‘5/10/96’);Для русского базы данных, текст программы будет смотреться так:

SELECT *

FROM Заказы

WHERE ДатаИсполнения = DateValue(‘10.5.96’);

Логические выражения and, or, not, between, in

Пример:

SELECT[Наименование товара] ASТовар, Годность

FROM Товары

WHERE Годность

ИТОГОВЫЙ ПРИМЕР

Пускай имеется таблица Товары. Создать итоговую таблицу с наименованием товара и

ценой не реализованного товара при условии, что цена непроданного товара должна быть больше …

SELECT Товар, (Количество * Цена) AS Цена

INTO Итоговая

FROM Таблица

WHERE (Количество * Цена) 500

Логические выражения and, or, not, between, in

Таблица Итоговая

Статистические функции

Статические функции готовы к вьщаче готовых значений. К статистическим функциям относятся следующие функции: Синтаксис

COUNT (выражение)…….. вычисляет количество записей, возвращаемых запросом.

SUM (выражение)………… возвращает сумму комплекта значений, содержащихся в за

данном поле запроса.

AVG (выражение) ………… вычисляет арифметическое среднее комплекта чисел,

содержащихся в указанном поле запроса.

MIN (выражение)……. возвращают минимальное и большое значения из

МАХ (выражение) комплекта значений, содержащихся в указанном поле запроса.

Функция COUNT

Вычисляет количество записей, возвращаемых запросом.

Синтаксис

SELECT Count (выражение) as ….

таблица [WHERE …]

Довод выражение есть строковым выражением, которое определяет поле, содер-жащее эти для подсчета, либо выражение, делающее вычисления с данными из

юля. Операнды довода выражение смогут включать имя поля таблицы либо функцию.

(Функция возможно внутренней либо определяться пользователем, но не мо-

жет быть второй статистической функцией SQL). Подсчитывать возможно каждые эти, включая текстовые.

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

Count возвращает легко количество записей. Это значение не зависит от того, какие конкретно эти находятся в этих записях.

Count не подсчитывает записи со значениями Null, в случае, если лишь довод вы-ражение не содержит подстановочный символ звездочки (*). В случае, если употребляются символы звез-

дочки, Count вычисляет общее число записей, включая те, каковые содер-жат безлюдные поля. Функция Count(*) трудится существенно стремительнее функции Сunt([Имя столбца].Не нужно заключать знак звездочки в прямые кавычки ( ).

В следующем примере вычисляется количество записей в таблице «Заказы»:

SELECT Count(*) AS ЧислоЗаказов FROMЗаказы;

Следующий запрос подсчитывает количество студентов 104 группы.

ELECT Count(Фамилия) AS [Студенты 104] FROMСтуденты WHEREгруппа = 104;

В случае, если в доводе выражение задано пара полей, функция Count подсчитывает за-

пись лишь в том случае, если хотя бы одно из полей не содержит значения Null. В случае, если

все указанные поля содержат значения Null, запись не подсчитывается. Для разделения

имен полей употребляется знак (). В следующем примере демонстрируется метод ог-

раничения числа записей теми записями, для которых поле «ДатаИсполнения» либо поле

СтоимостьДоставки не содержат безлюдные значения:

SELECT Count(‘ДатаИсполнения в цена доставки’ )AS [Not Null] FROMЗаказы;

Статистические функции

Статистические функции готовы к выдаче готовых значений. К статистическим функциям относятся следующие функции: Синтаксис

• COUNT (выражение)……вычисляет количество записей, возвращаемых запросом.

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

данном поле запроса.

• AVG(выражение) ………. вычисляет арифметическое среднее комплекта чисел,

содержащихся в указанном поле запроса.

• MIN(выражение)………… возвращают минимальное и большое значения из

МАХ(выражение) комплекта значений, содержащихся в указанном поле запроса.

Функция COUNT

Вычисляет количество записей, возвращаемых запросом.

Синтаксис

SELECT Count (выражение) as ….

FROM таблица

[WHERE …]

Довод выражение есть строковым выражением, которое определяет поле, содержащее эти для подсчета, либо выражение, делающее вычисления с данными из этого поля. Операнды довода выражение смогут включать имя поля таблицы либо функцию. (Функция возможно внутренней либо определяться пользователем, но не может быть второй статистической функцией SQL). Подсчитывать возможно каждые эти, включая текстовые.

Дополнительные сведения

Функцию Count применяют для подсчета количества записей в базисном запросе. Функция Count возвращает легко количество записей. Это значение не зависит от того, какие конкретно эти находятся в этих записях.

Функция Countне подсчитывает записи со значениями Null, в случае, если лишь довод выражение не содержит подстановочный символ звездочки (*). В случае, если употребляются символы звездочки, функция Count вычисляет общее число записей, включая те, каковые содержат безлюдные поля. Функция Count(*) трудится существенно стремительнее функции Соunt([Имя столбца]). Не нужно заключать знак звездочки в прямые кавычки ( ). В следующем примере вычисляется количество записей в таблице «Заказы»:

SELECT Count{*) AS ЧислоЗакаЗов FROM Заказы;

Следующий запрос подсчитывает количество студентов 104 группы.

SELECT Count(Фамилия) AS [Студенты 104] PROM Студенты WHERE несколько= 104;

В случае, если в доводе выражение задано пара полей, функция Count подсчитывает запись лишь в том случае, если хотя бы одно из полей не содержит значения Null. В случае, если все указанные поля содержат значения Null,запись не подсчитывается. Для разделения имен полей употребляется знак (). В следующем примере демонстрируется метод ограничения числа записей теми записями, для которых поле «ДатаИсполнения» либо поле «СтоимостьДоставки» не содержат безлюдные значения:

SELECT Count(‘ДатаИсполнения СтоимостьДоставки’)AS[Not Null] FROM Заказы;

Функция SUM

Возвращает сумму комплекта значений, содержащихся в заданном поле запроса.

Синтаксис

SELECT Sum (выражение) as ….

FROM таблица

[WHERE …]

Довод выражение есть строковым выражением, которое определяет поле, содержащее додаваемые числовые эти, либо выражение, делающее вычисления с данными из этого поля. Операнды довода выражение смогут включать:

• имя поля таблицы,

• константу,

• либо функцию.

(Функция возможно внутренней либо определяться пользователем, но не может быть второй статистической функцией SQL).

Дополнительные сведения

Функция Sumвыполняет суммирование значений в поле. Функция Sum пропускает записи с полями, содержащими значения Null.

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

SELECT Sum([К выплате])AS Итого FROM Ведомость

WHERE Факультет = ЭФ;

Логические выражения and, or, not, between, in

Ведомость

Логические выражения and, or, not, between, in

В следующем примере продемонстрировано, как вычислить сумму произведений полей «Количество» и «Цена»:

SELECT Sum(Цена * Количество)AS [ Доход] FROM Заказано;

Функция AVG

Вычисляет арифметическое среднее комплекта чисел, содержащихся в указанном поле запроса.

Синтаксис

SELECT Avg (выражение) as ….
FROM таблица

[WHERE …]

Довод выражение есть строковым выражением, которое определяет поле, содержащее числовые эти для вычисления среднего значения, либо выражение, делающее вычисления с данными из этого поля. Операнды довода выражение смогут включать:

• имя поля таблицы,

• константу,

• либо функцию.

(Функция возможно внутренней либо определяться пользователем, но не может быть второй статистической функцией SQL).

Дополнительные сведения

Среднее значение, вычисленное функцией Avg, есть числовым значением (сумма

значений, деленая на их количество).

Функция Avg не включает в вычисления поля со значениями Null.

Следующий запрос определяет средний балл 112 группы.

SELECT AVG([Экзамен])AS [Cp балл]
FROM Ведомость

WHERE Несколько — 112;

Логические выражения and, or, not, between, in

Функции MIN, MAX

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

указанном поле запроса.

Синтаксис

¦

SELECT Min (выражение) as …. FROM таблица [WHERE …]

Довод выражение есть строковым выражением, которое определяет поле, содержащее обрабатываемые эти, либо выражение, делающее вычисления с данными из этого поля. Операнды довода выражение смогут включать:

• имя поля таблицы,

• константу,

• либо функцию.

(Функция возможно внутренней либо определяться пользователем, но не может быть второй статистической функцией SQL).

Дополнительные сведения

Функции Mm и Мах употребляются для определения мельчайшего и громаднейшего значений из поля на базе выборки либо группировки. К примеру, возможно применить эти функции для возврата мельчайшей и громаднейшей цене доставки. Если не указан метод группировки, употребляется вся таблица. Следующий запрос определяет большую заработную плат.

SELECT Маx([К выплате])AS Максимум

FROM Ведомость

WHERE Факультет = ЭФ;

Фамилия Факультет К выплате
ИСАЕВ ММ
ИСАЧКИН ЭФ
КАМЕНЕВ вмк
ИВАННИКОВ ЭФ
ИВАНОВ фф
КАРТАШЕВ ЭФ
КАШОЛКИН вмк

Максимум 5600

Предложение GROUP BY

Объединяет записи с однообразными значениями в указанном перечне полей в одну запись. В случае, если инструкция SELECT содержит статистическую функцию SQL, к примеру Sumили Count,то для каждой записи будет вычислено итоговое значение.

Синтаксис

SELECT списокПолей FROM таблица [WHERE] условиеОтбора GROUP BY [группируемыеПоля]

Ниже перечислены доводы инструкции SELECT, содержащей предложение GROUP BY:
Элемент Описание

группируемыеПоля

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

Дополнительные сведения

Предложение GROUP BY есть необязательным.

Итоговые значения не рассчитываются, в случае, если инструкция SELECT не содержит статистической функции SQL.

Значения Null,каковые находятся в полях, заданных в предложении GROUP BY, группируются и не опускаются. Но статистические функции SQL не обрабатывают значения Null.

Применяйте предложение WHERE для исключения записей из группировки, а предложение HAVING для применения фильтра к записям по окончании группировки.

При применении предложения GROUP BY все поля в перечне полей инструкции SELECT должны быть или включены в предложение GROUP BY, или употребляться в качестве доводов статистической функции SQL.

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

SELECT Несколько, Count(Гpyппa) as Колич, Avg(Эк) as [Ср б Эк], Avg(Инф)) as [Cp б Инф]
into [Итоговая ведомость]
from Ведомость
GROUP BY Несколько;
Ведомость Итоговая ведомость

Логические выражения and, or, not, between, in

Следующий пример подсчитывает количество студентов в МГУ, обучающихся на каждом факультете по направлениям обучения.

SELECT Факультет, Курс, Соunt(Фамилия) as Количество

from Ведомость

GROUP BY Факультет, Курс;

Ведомость

Логические выражения and, or, not, between, in

Предложение HAVING

Определяет, какие конкретно сгруппированные записи отображаются при применении инструкции SELECT с предложением GROUP BY. По окончании того как записи будут сгруппированы посредством предложения GROUP BY, предложение HAVING отберет те из взятых записей, каковые удовлетворяют условиям отбора, указанным в предложении HAVING.

Синтаксис

SELECT списокПолей FROM таблица WHERE условиеОтбора GROUP BY группируемыеПоля HAVING условиеГруппировки

Ниже перечислены доводы инструкции SELECT, содержащей предложение HAVING:

Элемент

группируемыеПоля

Описание

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

условиеГруппировки

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

Предложение HAVING есть необязательным.

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

SELECT КодТипа, Sum(НаСкладе)

FROM Товары

GROUP BY КодТипа

HAVINGSum(НаСкладе) 100;

Предложение HAVING может содержать до 40 выражений, связанных логическими операторами, такими как And и Ог.

Инструкция SELECT [предикат]

Предикат разрешают отобрать записи среди выбранных посредством запроса на языке SQL.

Элемент

предикат

Описание

Один из следующих предикатов отбора:

ALL,DISTINCT, DISTINCTROW ТОР. Предикаты употребляются для ограничения числа возвращаемых записей. Если они отсутствуют, по умолчанию употребляется предикат ALL.

Синтаксис

SELECT [ALL /DISTINCT /DISTINCTROW /[TOP n [PERCENT]]] имена полей {наблюдай

выше }

FROMтаблица

Элемент Описание

ALL В случае, если инструкция SQL не содержит ни одного предиката, то подразуме-

вается предикат ALL. Отбираются все записи, соответствующие условиям, заданным в инструкции SQL.

DISTINCT Исключает записи, каковые содержат повторяющиеся значения в вы-

бранных полях. Дабы запись была включена в итог исполнения запроса, значения в каждом поле, подключенном в инструкцию SELECT, должны быть неповторимыми. К примеру, в таблице «Сотрудники» имеется однофамильцы. В случае, если две записи содержат значение «Иванов» в поле «Фамилия», то следующая инструкция SQL возвратит лишь одну из них:

SELECT DISTINCT Фамилия

FROM Сотрудники;

В случае, если опустить предикат DISTINCT, данный запрос возвратит обе записи для фамилии Иванов. В случае, если предложение SELECT содержит более одного поля, то для включения записи в итог исполнения запроса нужно, дабы совокупность значений во всех этих полях была неповторимой. Итог исполнения инструкции SQL, содержащей предикат DISTINCT, есть необновляемым и не отражает последующие трансформации, внесенные вторыми пользователями.

DISTINCTROW Опускает эти, основанные на полностью повторяющихся записях, а не отдельных повторяющихся полях. К примеру, создан запрос, объединяющий таблицы «Заказы» и «Клиенты» по полю «КодКлиента». Таблица «Клиенты» не имеет повторяющихся значений в поле «КодКлиента», а таблица «Заказы» содержит, потому, что любой клиент может сделать пара заказов. Следующая инструкция SQL показывает, как возможно применять предикат DISTINCTROW чтобы получить список клиентов, разместивших хотя бы один заказ, без включения сведений о самих заказах:

Логические выражения and, or, not, between, in

SELECT DISTINCTROWНазвание

FROMКлиенты INNERJOIN Заказы

ONКлиенты.КодКлиента = Заказы.не сильный ORDERBY Наименование;

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

Возвращает определенное число записей, находящихся в начале либо в конце диапазона, обрисованного посредством предложения ORDER BY. Следующая инструкция SQL дает возможность приобрести перечень 25 лучших студентов выпуска 1994 года:

SELECT TOP 25Имя, Фамилия

FROMСтуденты

WHERE[Год Выпуска] = 1994

ORDERBY [Средний Балл] DESC;

В случае, если предложение ORDER BY будет опущено, запрос возвратит произвольный комплект 25 записей из таблицы «Студенты», удовлетворяющих предложению WHERE. Предикат ТОР не осуществляет выбор между равными значениями. В случае, если в прошлом примере средние баллы двадцать пятого и двадцать шестого студентов будут равны, то запрос возвратит 26 записей.

Помимо этого, возможно применять зарезервированное слово PERCENT для возврата определенного процента записей, находящихся в начале либо в конце диапазона, обрисованного посредством предложения ORDER BY. Предположим, что вместо 25 лучших студентов направляться отобрать студентов, попавших в последние 10%:

SELECT TOP 10 PERCENTИмя, Фамилия

FROMСтуденты

WHERE[Год Выпуска] = 1994

ORDER BY[Средний Балл] ASC;

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

Инструкция UPDATE

Формирует запрос на модернизацию, что изменяет значения полей указанной таблицы на базе заданного условия отбора.

Синтаксис UPDATE SET WHERE Элемент таблица

условие Отбора

таблица

поле1 = новоеЗначение1, поле2 = новоеЗначение2,… условиеОтбора ;

Описание

Имя таблицы, данные в которой направляться поменять.

поле1 = новоеЗначение1

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

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

Дополнительные сведения

Инструкцию UPDATE особенно комфортно применять для трансформации сходу многих записей либо в том случае, если записи, подлежащие трансформации, находятся в различных таблицах. В один момент возможно поменять значения нескольких полей. Следующая инструкция SQL повышает цена заказа на 10%, а цена доставки на 3%:

UPDATE Заказы

SET

СуммаЗаказа = СуммаЗаказа * 1.1, СтоимостьДоставки = СтоимостьДоставки * 1.03

WHERE СтранаПолучателя = Франция;

Инструкция INSERT INTO

Инструкция INSERT INTO предназначена для добавленияодной либо нескольких записей в финиш таблицы.

Запрос на добавление одной записи Синтаксис:

INSERT INTO VALUES

таблица (поле1, поле2, … полеN) значение1, значение2, значениеN;

Добавление осуществляется следующим образом: значение 1 в поле1 значение2 в поле2

значениеN в поле N

Количество перечисленных полей и количество значений должны быть однообразными, и типы разрешённых должны совпадать. Значения текстовых полей заключаются в кавычки.

В случае, если заполняются все столбцы записи, то инструкции INSERT INTO имена полей возможно опустить, но количество значений должно соответствовать количеству полей в заполняемой таблице.

INSERT INTO VALUES

таблица

значение!, значение2, значением;

Пример:

Втаблице «Студенты» добавить запись нового студента, содержащую фамилию, имя. год и отчество рождения.

INSERT INTO VALUES

Студенты (Фамилия, Имя, Отчество, [Год рождения]) Смирнов, Игорь, Петрович, 1985;

Запрос на добавление нескольких записей:

INSERT INTOтаблицаНазначения (поле1, поле2, … полеN)
SELECT поле1, поле2, … полеN
FROM выражение

[WHERE…]

Элемент Описание

таблщаНазначения Имя таблицы, в которую добавляются записи.

выражение

Имена таблицы либо таблиц, откуда вставляются эти. Это выражение возможно именем отдельной таблицы либо результатом операции INNER JOIN, LEFT JOIN либо RIGHT JOIN, и сохраненным запросом.

Дополнительные сведения

Инструкцию INSERT INTO возможно кроме этого применять для добавления комплекта записей из второй таблицы либо запроса посредством предложения SELECT … FROM, как продемонстрировано выше в запросе на добавление нескольких записей. В этом случае предложение SELECT определяет поля, додаваемые в указанную таблицу Назначение.

Инструкция INSERT INTO есть необязательной, в случае, если же она присутствует, то обязана пребывать перед инструкцией SELECT.

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

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

Для новой таблицы применяйте инструкцию SELECT… INTO вместо запроса на создание таблицы.

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

Инструкция DELETE

Инструкция DELETE разрешает создать запрос на удаление записей из одной либо нескольких таблиц.

Синтаксис:
DELETE
FROM имя таблицы
WHERE условие отбора;

Пример:

DELETE

FROM Студенты

WHERE Экзамен = 2;

DELETE

FROM Товар

WHERE [Дата Годность] #10/11/2003#;

Удалить все записи в таблице «Студенты», в случае, если в поле «Экзамен» стоит 2.

Удалить все записи в таблице «Товар», в случае, если истек срок годности товара.

:.тж-

Примечание 1: В случае, если условие отбора (WHERE …) не задано, то удаляются все записи из таблицы.

Примечание 2: Для связанных таблиц удаление записи из master таблицы приведет к каскадному удалению записей из всех дочерних таблиц.

Внимание: Удаленные записи не подлежат восстановлению. Исходя из этого перед удалением возможно посредством конструкции SELECT убедится в правильности отбора данных для удаления.

Совет: Для удаления не всей записи, а лишь значения поля, возможно воспользоваться запросом на модернизацию, что разрешает заменить исходное значение полей на значение Null.

[Lynda.com] PHP MySQL — Управляющие структуры. Логические выражения — 38 — Условные операторы


Интересные записи:

Понравилась статья? Поделиться с друзьями: