Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Мартин Грубер - Понимание SQL

Мартин Грубер - Понимание SQL (Мартин Грубер. Понимание SQL), страница 9

PDF-файл Мартин Грубер - Понимание SQL (Мартин Грубер. Понимание SQL), страница 9 Информационные технологии в материаловедении (5730): Книга - 9 семестр (1 семестр магистратуры)Мартин Грубер - Понимание SQL (Мартин Грубер. Понимание SQL) - PDF, страница 9 (5730) - СтудИзба2015-08-23СтудИзба

Описание файла

PDF-файл из архива "Мартин Грубер. Понимание SQL", который расположен в категории "". Всё это находится в предмете "информационные технологии в материаловедении" из 9 семестр (1 семестр магистратуры), которые можно найти в файловом архиве НИУ «МЭИ» . Не смотря на прямую связь этого архива с НИУ «МЭИ» , его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "информационные технологии в материаловедении" в общих файлах.

Просмотр PDF-файла онлайн

Текст 9 страницы из PDF

Символ ESC используемый в LIKE строке, сопровождается знаком про-цента, знаком подчеркивания, или знаком ESCAPE, который будет искаться в столбце,а не обрабатываться как групповой символ. Символ ESC должен быть одиночнымсимволом и применяться только к одиночному символу сразу после него.В примере выше, символ процента начала и символ процента окончания обрабатываются как групповые символы; только подчеркивание предоставлено само себе.Как упомянуто выше, символ ESC может также использоваться самостоятельно.Другими словами, если вы будете искать столбец с вашим символом ESC, вы простовводите его дважды.

Во-первых это будет означать что символ ESC "берет следующий символ буквально как символ", и во-вторых что символ ESC самостоятелен.Имеется предыдущий пример который пересмотрен чтобы искать местонахождение строки '_/' в sname столбце:SELECT *FROM SalespeopleWHERE sname LIKE ' % /_ / / %'ESCAPE'/';Снова не будет никакого вывода с такими данными.Строка сравнивается с содержанием любой последовательности символов (%),сопровождаемых символом подчеркивания (/_), символом ESC (//), и любой последовательностью символов в конце строки (%).РАБОТА С НУЛЕВЫМИ (NULL) ЗНАЧЕНИЯМИЧасто, будут иметься записи в таблице которые не имеют никаких значений длякаждого поля, например потому что информация не завершена, или потому что этополе просто не заполнялось.

SQL учитывает такой вариант, позволяя вам вводитьзначение NULL (ПУСТОЙ) в поле, вместо значения. Когда значение поля равно NULL,это означает, что программа базы данных специально промаркировала это поле какне имеющее никакого значения для этой строки (или записи). Это отличается от просто назначения полю значения нуля или пробела, которые база данных будет обрабатывать также как и любое другое значение.

Точно также, как NULL не являетсятехническим значением, оно не имеет и типа данных. Оно может помещаться в любойтип поля. Тем ни менее, NULL в SQL часто упоминается как нуль.Предположим, что вы получили нового заказчика который еще не был назначенпродавцу. Чем ждать продавца к которому его нужно назначить, вы можете ввести заказчика в базу данных теперь же, так что он не потеряется при перестановке. Вы можете ввести строку для заказчика со значением NULL в поле snum и заполнить этополе значением позже, когда продавец будет назначен.NULL ОПЕРАТОРТак как NULL указывает на отсутствие значения, вы не можете знать, каков будетрезультат любого сравнения с использованием NULL. Когда NULL сравнивается с любым значением, даже с другим таким же NULL, результат будет ни верным ни неверным, он — неизвестен.

Неизвестный Булев, вообще ведет себя также как невернаястрока, которая произведя неизвестное значение в предикате не будет выбрана запросом — имейте ввиду, что в то время как NOT (неверное) — равняется верно, NOT(неизвестное) — равняется неизвестно. Следовательно, выражение типа 'city = NULL'или 'city IN (NULL)' будет неизвестно, независимо от значения city.

Часто вы должныделать различия между неверно и неизвестно — между строками содержащими значения столбцов, которые не соответствуют условию предиката и которые содержатNULL в столбцах. По этой причине, SQL предоставляет специальный оператор IS, ко-торый используется с ключевым словом NULL, для размещения значения NULL. Найдем все записи в нашей таблице Заказчиков с NULL значениями в city столбце:SELECT *FROM CustomersWHERE city IS NULL;Здесь не будет никакого вывода, потому что мы не имеем никаких значенийNULL в наших типовых таблицах.

Значения NULL — очень важны, и мы вернемся кним позже.ИСПОЛЬЗОВАНИЕ NOT СО СПЕЦИАЛЬНЫМИОПЕРАТОРАМИСпециальные операторы которые мы изучали в этой главе могут немедленнопредшествовать Булеву NOT.Он противоположен реляционным операторам, которые должны иметь операторNOT вводимым выражением. Например, если мы хотим устранить NULL из нашеговывода, мы будем использовать NOT, чтобы изменить на противоположное значениепредиката:SELECT *FROM CustomersWHERE city NOT NULL;При отсутствии значений NULL (как в нашем случае), будет выведена вся таблица Заказчиков. Аналогично можно ввести следующее:SELECT *FROM CustomersWHERE NOT city IS NULL;что также приемлемо.Мы можем также использовать NOT с IN:SELECT *FROM SalespeopleWHERE city NOT IN ( 'London', 'San Jose' );А это — другой способ подобного же выражения:SELECT *FROM SalespeopleWHERE NOT city IN ( 'London', ' San Jose' );Вывод для этого запроса показывается в Рисунке 5.9.=============== SQL Execution Log ============| SELECT *|| FROM Salespeople|| WHERE sity NOT IN ('London', 'San Jose';|| ==============================================||snumsnamecitycomm|| ------------------------------- ||1003RifkinBarcelona0.15||1007AxelrodNew York0.10|===============================================Рисунок 5.9: Использование NOT с INТаким же способом Вы можете использовать NOT BETWEEN и NOT LIKE.РЕЗЮМЕТеперь вы можете создавать предикаты в терминах связей специально определенных SQL.

Вы можете искать значения в определенном диапазоне (BETWEEN) илив числовом наборе (IN), или вы можете искать символьные значения которые соответствуют тексту внутри параметров (LIKE).Вы также изучили некоторые вещи относительно того, как SQL поступает при отсутствии данных — что реальность мировой базы данных — используя NULL вместоконкретных значений. Вы можете извлекать или исключать значения NULL из вашеговывода используя оператор IS NULL.Теперь, когда вы имеете в вашем распоряжении весь набор стандартных математических и специальных операторов, вы можете переходить к специальным функциям SQL, которые работают на всех группах значений, а не просто на одиночномзначении, что важно.

Это уже тема Главы 6.РАБОТА С SQL1. Напишите два запроса которые могли бы вывести все порядки на 3 или 4 Октября19902. Напишите запрос который выберет всех заказчиков обслуживаемых продавцамиPeel или Motika. (Подсказка: из наших типовых таблиц, поле snum связывает вторую таблицу с первой)3. Напишите запрос, который может вывести всех заказчиков, чьи имена начинаютсяс буквы попадающей в диапазон от A до G.4. Напишите запрос который выберет всех пользователей чьи имена начинаются сбуквы C.5.

Напишите запрос который выберет все порядки имеющие нулевые значения илиNULL в поле amt (сумма).(См. Приложение A для ответов.)6ОБОБЩЕНИЕ ДАННЫХ СПОМОЩЬЮ АГРЕГАТНЫХФУНКЦИЙВ ЭТОЙ ГЛАВЕ, ВЫ ПЕРЕЙДЕТЕ ОТ ПРОСТОГО использования запросов к извлечению значений из базы данных и определению, как вы можете использовать этизначения чтобы получить из них информацию. Это делается с помощью агрегатныхили общих функций которые берут группы значений из поля и сводят их до одиночного значения. Вы узнаете как использовать эти функции, как определить группы значений к которым они будут применяться, и как определить какие группы выбираются длявывода. Вы будете также видеть при каких условиях вы сможете объединить значенияполя с этой полученной информацией в одиночном запросе.ЧТО ТАКОЕ АГРЕГАТНЫЕ ФУНКЦИИ ?Запросы могут производить обобщенное групповое значение полей точно такжекак и значение одного поля.

Это делает с помощью агрегатых функций. Агрегатныефункции производят одиночное значение для всей группы таблицы. Имеется списокэтих функций:• COUNT производит номера строк или не-NULL значения полей которыевыбрал запрос.• SUM производит арифметическую сумму всех выбранных значений данногополя.• AVG производит усреднение всех выбранных значений данного поля.• MAX производит наибольшее из всех выбранных значений данного поля.• MIN производит наименьшее из всех выбранных значений данного поля.КАК ИСПОЛЬЗОВАТЬ АГРЕГАТНЫЕ ФУНКЦИИ ?Агрегатные функции используются подобно именам полей в предложенииSELECT запроса, но с одним исключением, они берут имена поля как аргументы.Только числовые поля могут использоваться с SUM и AVG.С COUNT, MAX, и MIN, могут использоваться и числовые или символьные поля.Когда они используются с символьными полями, MAX и MIN будут транслировать их вэквивалент ASCII, который должен сообщать, что MIN будет означать первое, а MAXпоследнее значение в алфавитном порядке (выдача алфавитного упорядочения обсуждается более подробно в Главе 4).Чтобы найти SUM всех наших покупок в таблицы Порядков, мы можем ввестиследующий запрос, с его выводом в Рисунке 6.1:SELECT SUM ((amt))FROM Orders;=============== SQL Execution Log ============| SELECT SUM (amt)|| FROM Orders;|| ==============================================|||| ------|| 26658.4|===============================================Рисунок 6.1: Выбор суммыЭто конечно, отличается от выбора поля, при котором возвращается одиночноезначение, независимо от того, сколько строк находится в таблице.

Из-за этого, агрегатные функции и поля не могут выбираться одновременно, пока предложениеGROUP BY (описанное далее) не будет использовано. Нахождение усредненой суммы— это похожая операция (вывод следующего запроса показывается в Рисунке 6.2):SELECT AVG (amt)FROM Orders;=============== SQL Execution Log ============| SELECT AVG (amt)|| FROM Orders;|| ==============================================|||| ------|| 2665.84|===============================================Рисунок 6.2: Выбор среднегоСПЕЦИАЛЬНЫЕ АТРИБУТЫ COUNTФункция COUNT несколько отличается от всех. Она считает число значений вданном столбце, или число строк в таблице.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5231
Авторов
на СтудИзбе
424
Средний доход
с одного платного файла
Обучение Подробнее