INSERT INTO
invoices
VALUES ('413', '60', '2019-10-04 00:00:00', '123 Day Street', 'New York', 'NY', 'USA', '10201', '50.00')
Вопрос 3. Удалите этого клиента из базы данных.
Решение. Как мы упоминали в главе 10, рекомендуется просмотреть данные, которые необходимо удалить. В этом случае данные, которые мы удаляем, содержатся в двух таблицах, поэтому для просмотра всех необходимых нам данных мы воспользуемся условием INNERJOIN.
SELECT
c. FirstName,
c. LastName,
i. Total,
i. InvoiceId
FROM
invoices i
INNER JOIN
customers c
ON i.CustomerId = c.CustomerId
WHERE c.CustomerId = 60
Теперь, когда мы подтвердили данные, мы можем использовать оператор DELETE.
DELETE FROM
invoices
WHERE CustomerId = 60
DELETE FROM
customers
WHERE CustomerId = 60
Приложение II. Список ключевых слов SQL по главам
Глава 4. Ключевые слова
| SELECT, AS, FROM, ORDERBY, ASC, DESC, LIMIT |
/*
Многострочные комментарии начинаются с сочетания символов /* и заканчиваются символами */. Как правило, блок комментариев соответствует следующему формату:
CREATED BY: <ФИО>
CREATED ON: <дата>
DESCRIPTION: <краткое описание, что делает запрос>
*/
— В данном примере используются однострочные комментарии:
SELECT — Указывает, какие данные или поля будут получены из базы данных
FirstName AS 'First Name', — Имя поля
LastName AS [Last Name], — С помощью ключевого слова AS можно
переименовать поле
Company AS Co — Псевдоним, состоящий из одного слова, который нет
необходимости заключать в одинарные кавычки или скобки
FROM — Указывает, какие таблицы содержит база данных
customers — Ссылка на таблицу customers
ORDER BY — Указывает порядок сортировки записей по определенному полю;
по умолчанию будет определена сортировка в порядке возрастания (A — Z)
FirstName DESC — сортировка в порядке убывания (Z — A)
LIMIT — Задает ограничение на количество записей, выбираемых из базы данных
10; — Точку с запятой указывать необязательно
Глава 5. Ключевые слова
| WHERE,CASE,WHEN,THEN,ELSE,ENDAS,DATE() |
Примечание
Операторы в SQL используются в условиях SQL.
Рис. 145
SELECT
InvoiceDate,
BillingAddress,
BillingCity,
Total
FROM
invoices
WHERE
Total = 1.98 — Возвращает только записи, где Total = 1.98
ORDER BY
InvoiceDate
CASE — Перебирает условия и возвращает значение, когда выполняется первое условие
WHEN — Используется для указания условия
THEN — Используется после оператора WHEN
ELSE — Используется, если условие не выполнено в условиях WHEN/THEN
END AS — Создается новое поле
SELECT
InvoiceDate,
BillingAddress,
BillingCity,
Total,
CASE — Создается четыре условия для отображения различных ценовых диапазонов
WHEN TOTAL < 2.00 THEN 'Baseline Purchase' — Условие 1
WHEN TOTAL BETWEEN 2.00 AND 6.99 THEN 'Low Purchase'
WHEN TOTAL BETWEEN 7.00 AND 15.00 THEN 'Target Purchase'
ELSE 'Top Performers' — Ключевое слово ELSE указывает другие имеющиеся условия
END AS PurchaseType
FROM
invoices
ORDER BY
BillingCity
Примечание
Для удобства печати в предыдущем примере однострочные комментарии сокращены. Однострочные комментарии всегда должны находиться в одной строке в браузере SQL, иначе они будут ошибочно приняты за код и возникнет ошибка.
Рис. 146
Примечание
DATE() — первая рассмотренная в книге функция. Она представлена ранее других, чтобы ее можно было использовать с ключевыми словами в главе 5. Другие функции рассмотрены в главе 7.
/*
С помощью функции DATE() можно удалить любую информацию о временном
коде из данных, хранящихся как тип DATETIME.
*/
SELECT
InvoiceDate,
DATE(InvoiceDate) AS [Results of DATE Function]
FROM
invoices
ORDER BY
InvoiceDate
Рис. 147
Глава 6. Ключевые слова
| INNERJOIN,ON,LEFTOUTERJOIN,RIGHTOUTERJOIN,IS,NOT |