Читаем SQL: быстрое погружение полностью

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

<p id="_17_xhtml_2523toc_marker_17_2"><strong>Глава 6. Ключевые слова</strong></p>
INNERJOIN,ON,LEFTOUTERJOIN,RIGHTOUTERJOIN,IS,NOT

Примечание

Оператор RIGHT JOIN не поддерживается в SQLite, но поддерживается в других реализациях СУБД.

Внутреннее соединение

SELECT

i. InvoiceId, — Указывает ссылку на поле в таблице

c. CustomerId,

c. Name,

c. Address,

i. InvoiceDate,

i. BillingAddress,

i. Total

FROM

invoices AS i

INNER JOIN

customers AS c

ON i.CustomerId = c.CustomerId

Левое внешнее соединение

SELECT

i. InvoiceId,

c. CustomerId,

c. Name,

c. Address,

i. InvoiceDate,

i. BillingAddress,

i. Total

FROM

invoices AS i

LEFT OUTER JOIN

customers AS c

ON

i. CustomerId = c.CustomerId

Правое внешнее соединение (не поддерживается в SQLite)

SELECT

i. InvoiceId,

c. CustomerId,

c. Name,

c. Address,

i. InvoiceDate,

i. BillingAddress,

i. Total

FROM

invoices AS i

RIGHT OUTER JOIN — Меняет местами таблицы

customers AS c

ON i.CustomerId = c.CustomerId

SELECT

ar.ArtistId AS [ArtistId From Artists Table],

al.ArtistId AS [ArtistId From Albums Table],

ar.Name AS [Artist Name],

al.Title AS [Album]

FROM

artists AS ar

LEFT OUTER JOIN

albums AS al

ON

ar.ArtistId = al.ArtistId

WHERE

al.ArtistId IS NULL — Можно также использовать IS NOT

<p id="_17_xhtml_2523toc_marker_17_3"><strong>Глава 7. Ключевые слова</strong></p>
GROUPBY,HAVING

Рис. 148

Примечание

SQLite распознает гораздо больше функций, чем включено в эту главу. Более подробную информацию вы можете найти на сайте https://www.sqlite.org/lang_corefunc.html.

<p id="_17_xhtml_2523toc_marker_17_4"><strong>Глава 8. Ключевые слова</strong></p>
DISTINCT

Базовый подзапрос:

Рис. 149

Рис. 150

Условие DISTINCT:

SELECT

DISTINCT TrackId

FROM

invoice_items

ORDER BY

TrackId

<p id="_17_xhtml_2523toc_marker_17_5"><strong>Глава 9. Ключевые слова</strong></p>
CREATEVIEW,DROPVIEW

CREATE VIEW V_ViewName AS [Alias Name]

DROP VIEW V_ViewName

<p id="_17_xhtml_2523toc_marker_17_6"><strong>Глава 10. Ключевые слова</strong></p>
INSERTINTO,UPDATE,SET,DELETE

Внимание

Язык управления данными (DML) позволяет изменять базу данных. С этими командами лучше попрактиковаться в «песочнице», например на учебной базе данных. Использование DML в рабочей базе с реальными данными может привести к фатальным последствиям.

INSERT INTO

artists (Name)

VALUES ('Bob Marley')

UPDATE

employees

SET PostalCode = '11202'

WHERE

EmployeeId = 9

DELETE FROM

employees

WHERE

EmployeeId = 9

<p id="_18_xhtml_2523toc_marker_18"><strong>Об авторе</strong></p>

Уолтер Шилдс (Walter Shields)

Уолтер Шилдс работает с SQL и базами данных уже более восемнадцати лет, сотрудничая с такими организациями, как Target Corporation, NYC Transit Authority и NYC Administration for Children's Services. Он помогает им использовать и понимать свои данные с помощью SQL.

Уолтер начал обучать студентов в кафе в Трайбеке в Нью-Йорке, где у него не было ничего, кроме ноутбука, «набитого» учебными материалами по SQL. С тех пор его наставничество превратилось в бизнес — компанию SQL Training Wheels. Когда Уолтер не обучает студентов, он работает над проектом Datadecided в компании Tableau (разработчик одноименного программного обеспечения для интерактивной визуализации данных и бизнес-аналитики).

<p id="_19_xhtml_2523toc_marker_19"><strong>Глоссарий</strong></p>

Агрегатная функция

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

Администратор базы данных

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

Аргументы

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

Арифметический оператор

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

Атрибут

Еще один вариант представления поля.

База данных

Перейти на страницу:

Все книги серии Библиотека программиста

Программист-фанатик
Программист-фанатик

В этой книге вы не найдете описания конкретных технологий, алгоритмов и языков программирования — ценность ее не в этом. Она представляет собой сборник практических советов и рекомендаций, касающихся ситуаций, с которыми порой сталкивается любой разработчик: отсутствие мотивации, выбор приоритетов, психология программирования, отношения с руководством и коллегами и многие другие. Подобные знания обычно приходят лишь в результате многолетнего опыта реальной работы. По большому счету перед вами — ярко и увлекательно написанное руководство, которое поможет быстро сделать карьеру в индустрии разработки ПО любому, кто поставил себе такую цель. Конечно, опытные программисты могут найти некоторые идеи автора достаточно очевидными, но и для таких найдутся темы, которые позволят пересмотреть устоявшиеся взгляды и выйти на новый уровень мастерства. Для тех же, кто только в самом начале своего пути как разработчика, чтение данной книги, несомненно, откроет широчайшие перспективы. Издательство выражает благодарность Шувалову А. В. и Курышеву А. И. за помощь в работе над книгой.

Чед Фаулер

Программирование, программы, базы данных / Программирование / Книги по IT

Похожие книги

1С: Бухгалтерия 8 с нуля
1С: Бухгалтерия 8 с нуля

Книга содержит полное описание приемов и методов работы с программой 1С:Бухгалтерия 8. Рассматривается автоматизация всех основных участков бухгалтерии: учет наличных и безналичных денежных средств, основных средств и НМА, прихода и расхода товарно-материальных ценностей, зарплаты, производства. Описано, как вводить исходные данные, заполнять справочники и каталоги, работать с первичными документами, проводить их по учету, формировать разнообразные отчеты, выводить данные на печать, настраивать программу и использовать ее сервисные функции. Каждый урок содержит подробное описание рассматриваемой темы с детальным разбором и иллюстрированием всех этапов.Для широкого круга пользователей.

Алексей Анатольевич Гладкий

Программирование, программы, базы данных / Программное обеспечение / Бухучет и аудит / Финансы и бизнес / Книги по IT / Словари и Энциклопедии
1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

Современные торговые предприятия предлагают своим клиентам широчайший ассортимент товаров, который исчисляется тысячами и десятками тысяч наименований. Причем многие позиции могут реализовываться на разных условиях: предоплата, отсрочка платежи, скидка, наценка, объем партии, и т.д. Клиенты зачастую делятся на категории – VIP-клиент, обычный клиент, постоянный клиент, мелкооптовый клиент, и т.д. Товарные позиции могут комплектоваться и разукомплектовываться, многие товары подлежат обязательной сертификации и гигиеническим исследованиям, некондиционные позиции необходимо списывать, на складах периодически должна проводиться инвентаризация, каждая компания должна иметь свою маркетинговую политику и т.д., вообщем – современное торговое предприятие представляет живой организм, находящийся в постоянном движении.Очевидно, что вся эта кипучая деятельность требует автоматизации. Для решения этой задачи существуют специальные программные средства, и в этой книге мы познакомим вам с самым популярным продуктом, предназначенным для автоматизации деятельности торгового предприятия – «1С Управление торговлей», которое реализовано на новейшей технологической платформе версии 1С 8.2.

Алексей Анатольевич Гладкий

Финансы / Программирование, программы, базы данных