Читаем 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

Глава 6. Ключевые слова

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

Глава 7. Ключевые слова

GROUPBY,HAVING

Рис. 148

Примечание

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

Глава 8. Ключевые слова

DISTINCT

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

Рис. 149

Рис. 150

Условие DISTINCT:

SELECT

DISTINCT TrackId

FROM

invoice_items

ORDER BY

TrackId

Глава 9. Ключевые слова

CREATEVIEW,DROPVIEW

CREATE VIEW V_ViewName AS [Alias Name]


DROP VIEW V_ViewName

Глава 10. Ключевые слова

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

Об авторе

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

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

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

Глоссарий

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

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

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

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

Аргументы

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

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

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

Атрибут

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

База данных

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

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

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

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

Чед Фаулер

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

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

1С: Управление торговлей 8.2
1С: Управление торговлей 8.2

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

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

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

C++ Primer Plus is a carefully crafted, complete tutorial on one of the most significant and widely used programming languages today. An accessible and easy-to-use self-study guide, this book is appropriate for both serious students of programming as well as developers already proficient in other languages.The sixth edition of C++ Primer Plus has been updated and expanded to cover the latest developments in C++, including a detailed look at the new C++11 standard.Author and educator Stephen Prata has created an introduction to C++ that is instructive, clear, and insightful. Fundamental programming concepts are explained along with details of the C++ language. Many short, practical examples illustrate just one or two concepts at a time, encouraging readers to master new topics by immediately putting them to use.Review questions and programming exercises at the end of each chapter help readers zero in on the most critical information and digest the most difficult concepts.In C++ Primer Plus, you'll find depth, breadth, and a variety of teaching techniques and tools to enhance your learning:• A new detailed chapter on the changes and additional capabilities introduced in the C++11 standard• Complete, integrated discussion of both basic C language and additional C++ features• Clear guidance about when and why to use a feature• Hands-on learning with concise and simple examples that develop your understanding a concept or two at a time• Hundreds of practical sample programs• Review questions and programming exercises at the end of each chapter to test your understanding• Coverage of generic C++ gives you the greatest possible flexibility• Teaches the ISO standard, including discussions of templates, the Standard Template Library, the string class, exceptions, RTTI, and namespaces

Стивен Прата

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