Главная » Просмотр файлов » Программирование баз данных MS SQL Server

Программирование баз данных MS SQL Server (1084479), страница 32

Файл №1084479 Программирование баз данных MS SQL Server (Программирование баз данных MS SQL Server) 32 страницаПрограммирование баз данных MS SQL Server (1084479) страница 322018-01-12СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 32)

Применение указанной третьей таблицы, с1С1еасгпог, позволяет косвенно соединить таблицы апспогэ и сзс1еэ, формируя соединения между каждой из этих таблиц и связующей таблицей. Соединение между таблицами аиСпогз и С1С1еапгпог формируется на основе столбца ап 1о, а соединение между таблицами С1С1ев и СЕС1еаиСЬог — на основе столбца С(С1е 1сс ~а)би.ад~~;э-'.)йг',з)И„Более сложные операторы с конструкциями вопч Введение указанной третьей таблицы в конструкции т01М не составляет труда; для этого достаточно снова указать в конструкции ЕЕОМ таблицу, в которой находится требуемая информация, и задать ключевые слова 501М (прежде чем вызвать на выполнение этот оператор, не забудьте переключиться на базу данных рпЬз): ЗЕЬЕСТ а.ав 1пате + ', ' ь а.ав Главе Ая "АаСЬог", С.СЕС1е Гяон аигвогз а поги СЕС1еаиСйог Са ОИ а.ач са = Са.аи са ЮО1М С1С1ез С ои С.СТС1е са = Сз.СТС1е за Обратите внимание на то, что таблицам присвоены псевдонимы, поэтому необходимо вернуться в начало оператора и внести изменения в конструкцию 5Е ЕСТ с учетом использования псевдонимов, но на этом составление оператора 5ЕЬЕСТ с соединением трех таблиц заканчивается! После вызова на выполнение этого оператора будут получены результаты, приведенные в табл.

4.10 (в данном случае применяется режим отображения в виде сетки). Соединения 133 Таблица 4.10. Результаты выполнения оператора соединения йиСЬок т1сйе Веппег, АЬгаЬав В1огсЬеС-На11з, Редтпа16 Сагзоп, СЬегу1 Оеггапсе, М1сЬе1 ие1 СазСШо, 1ппез Ои11, Апп Ьосхз1еу, СЬаг1епе Ьоскз1еу, СЬаг1епе Масуеагпег, Ягеагпз МасгеаСЬег, Ягеагпз О'Ьеагу, Мьспае1 О" еагу, мгсЬае1 Рапге1еу, Яу1ч1а 1з Апдег СЬе Епеву? Ьууе ИгСЬоиг Реаг ТЬе ОоигвеС Мссгоначе Следуепп учитывать, что на другом компьютере в связи с наличием иных к)ьитфиев со)птю розки может быть получен отличный от етого п|фя доя софок (напомни|с что в СУБД 5~® Бегиег не гарантируетгя воз|фат результатов в огфеделеинам пгфядке, если не игпаеьзуется констРукдия ОВОЕН ВУ), а поскольку конепфукдия ОНОЕН ВУ не гфедугмотУ?она, то вступает в в|лу известная истина: "Фактически гфименяемый гпособ гфедставления результатов может шменитьсз ". Описание полученных результатов Если бы к таблице аиСЬогз был применен простой оператор ЯЕЬЕСТ *, то оказалось бы, что сведения о некоторых авторах нс получены, несмотря на то, что сами эти авторы представлены в таблице аиСЬогз.

Тем самым создалось бы впечатление, что соответствующие данные о написанных этими авторами книгах отсутствуют (по крайней мере в рассматриваемой базе данных). А в действительности даже при использовании приведенной выше сложной конструкции соединения в итоговые результаты не попало одно название книги (ТЬе РзусЬО1оду ОТ Совригег СООМ1пд), Огееп, Маг)ог1е Огееп, Маг)огге Оггпд1езЪу, Вигс Нипгег, ЯЬегу1 Кагзеп, Ьг |Та Н1пдег, А1Ьегг Н1пдег, А1Ьегг Нспдег, Аппе Н1пдег, Аппе Ягга1дЬС, Оеап ИЬгге, ЮоЬпзоп токового, Аксхо ТЬе Визу Ехесиг1че'з ОагаЬазе Биссе Рсггу Уеагз 1п Висс1пдЬав Ра1асе К1сспепз Виг 1з 1С Озег Ргсепа1у? ТЬе Ооигвег Мссгоначе ЯШсоп Ча11еу Оазггоповсс Тгеагз Яесгегз ог Я111соп Ча11еу ТЬе Визу Ехесиггче'з ОагаЬазе Биссе Хои Сап СовЬаг Совригег Яггезз! ЯизЬЬ, Апуопе? Яесгегз ог ЯШсоп Ча11еу Совригег РЬоЬгс АМО Моп-РЬоЬТс 1па1ч1ииа1з: Вепач1ог Чаг1аС1опз Мег Егьдиегге Евоггопа1 Бесигггу: А Меч А1доггг1пп Соосгпд нТСЬ Совригегз| Яиггерг1С1оиз Ва1апсе ЯЬеегз Совригег РЬоЬТс АНО Ноп-РЬоЬЬс 1пасчсоиа1з: ВеЬачьог Чаг1асьопз Соох1пд н1СЬ Совригегз: ЯиггерСЬС1оиз Ва1апсе ЯЬеегз БизЬ1, Апуопе? Опгопз, Ьеесз, апа Оаг11с| Соопспд Яесгегз ог СЬе Мед1геггапеап 1з Апдег СЬе Епе|пу? Яггасдпг Та1К АЬоиг Совригегз Рго1опдеа Вага Оерг1чаггоп: Роиг Сазе Ягиа1ез ЯизЬ1, Апуопе? 134 Глава 4 поскольку не удалось согласовать это название ни с одним из авторов! Еще раз отметим, что основной особенностью конструкций 1ННЕК 001Н является то, что при использовании этих конструкций из результирующего набора исключаются строки, не соответствующие всем заданным критериям.

В отличие от этого, при использовании рассматриваемого оператора сложного соединения вначале формируются результаты соединения второй таблицы с первой, а затем по такому же принципу происходит соединение полученного результирующего набора с третьей таблицей. Подобные операторы можно усложнять, добавляя все новые и новые таблицы, и каждая добавляемая таблица будет действовать по такому же принципу, участвуя в соединении с полученным ранее результирующим набором. Обратите'впицдние не то;,нто а;последнем'-'.запросе:не: испельзуется::«любчеаое сяотяо.

1НЙЕК!-'Э О СВяааНООуЕМ:ЧьтаебюдняЕйИЕ'1ННЕК::'101ийрвдотааяяатсСОбедярИМЕНяЕММй ПРугМОЛЧаНИЮ тнд СОЕГДИНЕНИЯ;тОТН::.ПРИНйМаЯ'РЕаЕННЕ'ОтОМ;;Оаайтат ЛНЯВНО УКЕаыаатЬ ' МЮЧЕаОЕТОЛОаО.ТНйЕК:;;.:йа1НЫа'-'раэйабсэтЧИсКИ'Пйндарйааавтея' 'раэянгЧНМХ'ПОддедтса,:,.'На ОаМ МтОр;аЧНтаьЕГ,:::ЧТО ада'-дааНО СЛОжюащз'алая ПраятяКИ йрОГраММИреааНИя,:СОГПгаойо которой':кмбчевоа'слово':Тяжек"чаще'-всего не,упоминается." применение,конструкции 1Щ1Еля .':.ГОз1Н;::а:НЕ,; ПРОСтО;СОТИ, ОКОРЭЕЕ фажа ДПОЕОботВУЕточтаНйЦЕ„--ИМЕЯНО 'ПОЕтЯМУ":а дЭЛЬНГЕйщаги-'В:НабуеящЕй яНИГЕ:дяя ОйссэгНаяаигня',ЕиуГОайНёГО,'ОсадИНЕНИя:,будкат.

ВГОСНОаг йОМ: ПРИМЕНЯтЬОЯ'тОЛЬГКЕ1ОЯОЧсЕЕОЕФфйе, ОЛ01Н, Конструкции ОСТЕЙ ЮОХН Применение конструкции 001Н такого типа, как 00ТЕК 001Н, скорее можно считать исключением, а не правилом. Разумеется, причина такой ситуации заключается не в том, что эти конструкции не позволяют выполнять какую-либо полезную работу, а, скорее, в следующем.

О Чаще всего при выборке данных с использованием оператора соединения необходимо обеспечить, чтобы данные соответствовали всем заданным критериям, а этого позволяет добиться только конструкция 1нхек 001н. 1з Многие разработчики, использующие язык ЯЯ1., осваивают лишь внутреннее соединение, осуществляемое с помощью конструкции 1ННЕК 001Н, но так и не заходят глубже; иными словами, многие разработчики просто не умеют пользоваться разновидностью оператора соединения с конструкцией ООТЕК.

1з Цели, которые позволяет достичь применение конструкции 00ТЕК 001Н, часто достижимы с помощью других методов. С3 Разработчики зачастую просто забывают о том, что может использоваться подобная конструкция. Еще раз отметим, что при использовании конструкции 1ННЕК 001Н исключаются все строки, не соответствующие всем заданным критериям, а при использовании конструкции ООТЕК, а также, как будет показано ниже в этой главе, конструкции ЕОЫ.

,101Ы существует возможность включить в результирующий набор строки, которые соответствуют хотя бы одному из заданных критериев. Иногда с помощью конструкции 00ТЕК т01Н удается легко решить задачи, которые на первый взгляд кажутся очень Соединения 135 сложными, поэтому очень жаль, что многие не умеют применять эти конструкции. Кроме того, с помощью конструкций ОСТЕН 001И часто удается повысить быстродействие при их использовании вместо вложенных подзапросов (которые будут описаны в главе 7). Выше в данной главе было укззано, что таблицы, участвующие в операции ООТН, подразделяются на находящуюся слева и на находящуюся справа (или просто на левую и правую).

Левой считается таблица, указанная в первую очередь, а правой — таблица, указанная после нее. Рассматривая операторы с конструкцией 1МНЕК 001И, мы в основном не придавали этому различию значения, поскольку во внутреннем соединении обе стороны всегда рассматриваются на равных.

Но когда речь идет о конструкциях ОСТЕН 001Н, понимание того, что обработка левой таблицы происходит иначе, чем правой, становится буквально необходимым. Впервые сталкиваясь с этим различием, можно подумать, что в нем нет ничего сложного; и действительно, все обстоит очень просто, но слишком часто встречаются ошибки в запросах, основанных на использовании конструкции ООТЕК 001И, которые обусловлены тем, что не учитывается различие между левой и правой таблицами. Чтобы научиться правильно формировать запросы с конструкцией ООТЕК 001И, вначале рассмотрим две иллюстрации к использованию синтаксиса. В первом примере рассматривается простой вариант конструкции ООТЕК 001И с двумя таблицами, а во втором примере речь идет о более сложном варианте, в котором конструкции ООТЕК 001И применяются в сочетании с конструкциями 0010 любых других типов.

Простой вариант оператора с конструкцией оотЕа юоанн Задача освоения первого варианта синтаксиса является несложной, и большинство разработчиков с ней успешно справляются: ЯЕЬЕСТ <ЯЕЬЕСТ 11зг> ГНОМ <СЬе СаЬЬе у С Со Ьо СЬе "ЬЕГТ" СзЬЬе> <ьеГт~к16нт> ~онтек) зо1н <саь1е уоо наос со ье сье "к16нт" саь1е> он <доЬЬ сооазсхоо> Читатель должен отметить, что в пРиведеннсчх ниже пдимфах, как фавило, используются полные синтаксические обозначения опфакий, т.е.

ооозначения с ключевым словам 00ТЕК (напушмф, ЬЕГТ ООТЕК 701М). Оо следует учитыватьь что ключевое слово О ОТЕК является неоавзательнымг достаточно лить включить ключевое слово 1ЕГТ или КТБНТ (нап)зимф, ЬЕГТ ТОХМ). Автор еще раз хочет заострить внимание читателя на том, что таблица, имя которой упоминается перед ключевым словом д01Н, рассматривается как левая таблица, ЬЕГТ, а таблица, имя которой следует за ключевым словом 001И, — как правая таблица, К16НТ. Как уже было сказано, применение операторов с конструкцией ОСТЕН 001Н приводит к получению не только тех данных, которые соответствуют всем критериям, но и данных, соответствующих лишь некоторым критериям, а то, какие именно строки, соответствующие лишь некоторым критериям, будут включены в результирующий набор, зависит от выбора той или иной стороны соединения.

Характеристики

Тип файла
PDF-файл
Размер
39,07 Mb
Тип материала
Предмет
Высшее учебное заведение

Список файлов книги

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