Чтение онлайн

на главную - закладки

Жанры

MySQL 5.0. Библиотека программиста

Гольцман Виктор

Шрифт:

DELETE FROM <Имя таблицы>

[WHERE <Условие отбора>]

[ORDER BY <Имя столбца> [ASC или DESC]]

[LIMIT <Количество строк>];

Например, информацию о клиенте по фамилии Петров вы можете удалить из таблицы Customers с помощью команды

DELETE FROM Customers WHERE id = 534;

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

если условие отбора не задано, – все строки таблицы. При этом с помощью параметра LIMIT можно указать предельное количество удаляемых строк, а с помощью параметра ORDER BY – последовательность удаления строк.

...

Примечание

При удалении строк родительской таблицы выполняются проверки целостности связи (см. описание параметров внешнего ключа в пункте «Ключевые столбцы и индексы»).

Итак, мы освоили операции изменения и удаления строк таблицы: команды UPDATE (обновление), REPLACE (замещение) и DELETE (удаление). Подведем итоги второй главы.

2.7. Резюме

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

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

Глава 3 Операторы и функции языка SQL

В этой главе вы познакомитесь с функциями и операторами, с помощью которых можно создавать выражения – формулы, вычисляющие какое-либо значение (числовое, логическое, символьное и др.). Наиболее часто выражения используются в SQL-запросах: как для вычисления значений, выводимых запросом, так и в условиях отбора. С помощью выражений можно также задавать условия отбора в SQL-командах UPDATE и DELETE, значения, добавляемые в таблицу, в командах INSERT и UPDATE и многое другое.

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

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

3.1. Операторы и функции проверки условий

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

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

Вначале мы рассмотрим операторы сравнения.

Операторы сравнения

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

сравнения является логическое значение:

• 1 (TRUE) – истинное значение, которое свидетельствует о том, что сравнение верно, условие выполнено;

• 0 (FALSE) – ложное значение, которое свидетельствует о том, что сравнение неверно, условие не выполнено;

• NULL – неопределенное значение, которое свидетельствует о том, что проверить условие невозможно, поскольку один из операндов равен NULL.

...

Примечание

Иногда проверить условие можно несмотря на то, что один из операндов равен NULL (см., например, описание операторов BETWEEN и IN в этом подразделе); в этом случае возвращается значение 1 или 0.

Начнем с рассмотрения оператора, проверяющего равенство двух операндов.

Оператор x = y

Оператор «равно» возвращает следующие значения:

• 1 (TRUE) – если х и y совпадают;

• 0 (FALSE) – если х и y различны;

• NULL – если по крайней мере один из операндов равен NULL.

Например, выберите из таблицы Customers (Клиенты) строки, в которых значение в столбце name равно «Крылов»:

SELECT * FROM Customers WHERE name = \'КРЫЛОВ\

Результат этого запроса представлен в табл. 3.1. Таблица 3.1. Результат выполнения запроса

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

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

Оператор x < = > у

В случае, когда оба операнда не равны NULL, данный оператор аналогичен оператору «равно». Если один из операндов равен NULL, оператор < = > возвращает значение 0 (FALSE), а если оба операнда равны NULL – значение 1 (TRUE).

Например, запрос

SELECT 100 = NULL, 100< = >NULL, NULL = NULL, NULL< = >NULL;

возвращает результат (табл. 3.2) и наглядно иллюстрирует различие между операторами = и < = >. Таблица 3.2. Результат выполнения запроса

Следующие операторы проверяют равенство операнда какому-либо логическому значению.

Оператор x IS y, где y – TRUE, FALSE, UNKNOWN или NULL

Выражением IS TRUE возвращает 1 (TRUE), если x – отличное от нулячисло или отличная от нулевой («0000-00-00 00:00:00») дата и/или время, и 0 (FALSE) – в остальных случаях.

Выражением IS FALSE возвращает 1 (TRUE), еслихравен нулю либо нулевой дате и/или времени, и 0 (FALSE) – в остальных случаях.

...

Примечание

Если x является символьной строкой, то перед сравнением с TRUE или FALSE эта строка преобразуется в число. Для этого отбрасываются все символы, начиная с первого, недопустимого в числовом значении, а начальная подстрока рассматривается как число. Если первый символ в значении – буква или пустая строка («»), то x приравнивается к нулю.

Выражениях IS UNKNOWN их IS NULL возвращают 1 (TRUE), еслихравен NULL, и 0 (FALSE) – в остальных случаях.

Поделиться:
Популярные книги

Сама себе хозяйка

Красовская Марианна
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Сама себе хозяйка

Ученичество. Книга 2

Понарошку Евгений
2. Государственный маг
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Ученичество. Книга 2

Надуй щеки!

Вишневский Сергей Викторович
1. Чеболь за партой
Фантастика:
попаданцы
дорама
5.00
рейтинг книги
Надуй щеки!

На границе империй. Том 9. Часть 4

INDIGO
17. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 4

Эволюционер из трущоб. Том 6

Панарин Антон
6. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
5.00
рейтинг книги
Эволюционер из трущоб. Том 6

Идеальный мир для Лекаря 19

Сапфир Олег
19. Лекарь
Фантастика:
юмористическое фэнтези
аниме
5.00
рейтинг книги
Идеальный мир для Лекаря 19

Гарем на шагоходе. Том 1

Гремлинов Гриша
1. Волк и его волчицы
Фантастика:
боевая фантастика
юмористическая фантастика
попаданцы
5.00
рейтинг книги
Гарем на шагоходе. Том 1

Академия проклятий. Книги 1 - 7

Звездная Елена
Академия Проклятий
Фантастика:
фэнтези
8.98
рейтинг книги
Академия проклятий. Книги 1 - 7

Беглец

Бубела Олег Николаевич
1. Совсем не герой
Фантастика:
фэнтези
попаданцы
8.94
рейтинг книги
Беглец

Сломанная кукла

Рам Янка
5. Серьёзные мальчики в форме
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Сломанная кукла

Офицер-разведки

Поселягин Владимир Геннадьевич
2. Красноармеец
Фантастика:
боевая фантастика
попаданцы
5.00
рейтинг книги
Офицер-разведки

Имя нам Легион. Том 9

Дорничев Дмитрий
9. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 9

(Не)нужная жена дракона

Углицкая Алина
5. Хроники Драконьей империи
Любовные романы:
любовно-фантастические романы
6.89
рейтинг книги
(Не)нужная жена дракона

Этот мир не выдержит меня. Том 2

Майнер Максим
2. Первый простолюдин в Академии
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Этот мир не выдержит меня. Том 2