Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович



Скачать 58.76 Kb.
Дата11.07.2014
Размер58.76 Kb.
ТипЛабораторная работа

  1. ГОУ МГИУ

  2. Кафедра: «Информационные технологии и системы в экономике и управлении» (22)

  3. Дисциплина: «Базы данных»

  4. Лабораторная работа №7 «Запросы на связях таблиц на языке SQL»

  5. Группаррггггггг 8292

  6. Студент: Насибулин Ильнур Радикович

  7. Преподаватель: Широков Л.А.

  8. Имя файла:prv(lr7(11v(8292(nasibulin(6s(

  9. Дата сдачи:

Лабораторная работа №7 Запросы на связях таблиц на языке SQL
Задание. Для реляционной таблицы, сформированной в работе 1, выполнить:

  • Выполнить соединение 2-х таблиц.

  • Создать 3 запроса на соединении таблиц.

  • Изложить теорию вопросов задания для защиты работы.

Порядок выполнения.

    1. Ознакомиться с методикой выполнения задания по лекциям и справочным материалам СУБД Access

    2. Выполнить пункты задания

    3. Подготовить отчет с включением результирующих по заданиям принтскринов экранов для защиты лабораторной работы

    4. Подготовиться к защите лабораторной работы


1.Выполнить соединение 2-х таблиц.
Для соединения 2х и более таблиц, необходимо использовать конструкцию JOIN .

Для примера соединим 2 таблицы- Balance и PRV .

Отобразим первую таблицу – Balance:

Отобразим следующую таблицу- PRV :


Скрипт, объединяющий таблицы, выглядит следующим образом:


SELECT prv.PIN, prv.[Адрес подключения], prv.Логин, prv.Статус, prv.[E-Mail] , prv.[Домашний телефон], Balance.Баланс

FROM Balance INNER JOIN prv

ON Balance.PIN = prv.PIN;
Результатом работы данного скрипта будет следующая таблица :

Важно отметить, что соединения таблиц происходит при помощи ON – задает поле, по которому происходит соединения таблиц.
2.Создать 3 запроса на соединении таблиц.
В качестве примера рассмотрим новую таблицу SKIDKIS, в ней отображается скидка на абонентскую плату. Таблица состоит из 2х полей : PIN и Скидки по ТП.

Таблица SKIDKIS:




Следующий скрипт позволяет объединить поля из таблиц PRV,Balance и SKIDKIS:
SELECT prv.
PIN, prv.Логин, prv.[Адрес подключения]

, Balance.Баланс, Skidkis.[скидки по ТП]

FROM (Skidkis INNER JOIN prv ON Skidkis.PIN = prv.PIN)

INNER JOIN Balance ON prv.PIN = Balance.PIN ;

Результирующая таблица выглядит следующим образом:


Выполним еще один запрос на объединение таблиц , с использованием разных полей.

Следующий скрипт объединяет 2 таблицы и отображает статус и скидку по тарифному плану:

SELECT prv.Статус, Skidkis.[скидки по ТП ]

FROM prv INNER JOIN Skidkis ON prv.PIN = Skidkis.PIN;
Результат выглядит следующим образом:




3.Изложить теорию вопросов задания для защиты работы.

Конструкция JOIN.

Объединяет записи из двух таблиц, если в связующих полях этих таблиц содержатся одинаковые значения.

Синтаксис

FROM таблица1 INNER JOIN таблица2 ON таблица1.поле1 оператор_сравнения таблица2.поле2

Операция INNER JOIN состоит из следующих элементов:

Элемент

Описание

таблица1, таблица2

Имена таблиц, содержащих объединяемые записи

поле1, поле2

Имена связываемых полей. Поля, не являющиеся числовыми, должны относиться к одному типу данных (Тип данных. Характеристика поля, определяющая тип данных, который может содержать это поле. Существуют следующие типы данных: Boolean, Integer, Long, Currency, Single, Double, Date, String и Variant (по умолчанию).) и содержать данные одного вида. Однако имена этих полей могут быть разными

оператор_сравнения

Любой оператор сравнения: (=, <, >, <=, >= или <>)


Замечания

Операцию INNER JOIN можно использовать в любом предложении FROM. Это самый распространенный тип объединения. С его помощью осуществляется объединение записей из двух таблиц по связующему полю, если оно содержит одинаковые значения в обеих таблицах.

При работе с таблицами «Отделы» и «Сотрудники» операцией INNER JOIN можно воспользоваться для выбора всех сотрудников в каждом отделе. Если же требуется выбрать все отделы (включая те из них, в которых нет сотрудников) или всех сотрудников (в том числе и не закрепленных за отделом), можно при помощи операции LEFT JOIN или RIGHT JOIN создать внешнее объединение (Внешнее объединение. Объединение, при котором в результирующем наборе записей запроса каждая пара соответствующих записей из двух таблиц объединяется в одну запись и представлены все записи из одной таблицы, даже если во второй таблице нет соответствующих значений в поле объединения.).

При попытке объединить поля, содержащие данные типа поле MEMO (Тип данных «Поле МЕМО». Тип данных поля в базе данных Microsoft Access. Поле МЕМО может содержать до 65535 символов.) или поле объекта OLE (Тип данных «Поле объекта OLE». Тип данных поля, используемый для сохранения объектов из других приложений, связанных или внедренных в базу данных Microsoft Access.), возникает ошибка.

Допускается объединение двух числовых полей похожих типов. Например, можно объединить поля с типами данных Счетчик (Тип данных «Счетчик». Тип данных поля в базе данных Microsoft Access, в котором для каждой добавляемой в таблицу записи в поле автоматически заносится уникальное числовое значение. Поле счетчика может содержать значения трех типов: последовательные, случайные и коды репликации.) и Длинное целое (Тип данных Long. Основной тип данных для хранения больших целых чисел. Переменная типа Long сохраняется как 32-битовое число в диапазоне от -2147483648 до 2147483647.), поскольку эти типы похожи. Однако объединить поля с типами данных Одинарное с плавающей точкой (Тип данных Single. Тип данных для сохранения переменных обычной точности в виде 32-битовых (4-байтовых) чисел с плавающей запятой в диапазоне от -3,402823E38 до -1,401298E-45 для отрицательных значений и от 1,401298E-45 до 3,402823E38 для положительных значений.) и Двойное с плавающей точкой (Тип данных Double. Основной тип данных для хранения чисел двойной точности с плавающей запятой. Сохраняется как 64-битовое число в диапазоне приблизительно от -1,797E308 до -4,940E-324 для отрицательных значений, от 4,94E-324 до 1,797E308 для положительных значений и 0.) нельзя.

В следующем примере показано, как можно объединить таблицы «Категории» и «Товары» по полю «ИДКатегории».

SELECT ИмяКатегории, Наименование

FROM Категории INNER JOIN Товары

ON Категории.ИДКатегории = Товары.ИДКатегории;

В предыдущем примере «ИДКатегории» является связующим полем, но оно не включено в результат запроса, поскольку оно не указано в инструкции SELECT. Чтобы включить связующее поле в результат запроса, укажите имя поля в инструкции SELECT: в данном случае это Категории.ИДКатегории.

В инструкции JOIN можно также связать несколько предложений ON, используя следующий синтаксис:

SELECT поля


FROM таблица1 INNER JOIN таблица2
ON таблица1.поле1 оператор_сравнения таблица2.поле1 AND
ON таблица1.поле2 оператор_сравнения таблица2.поле2) OR
ON таблица1.поле3 оператор_сравнения таблица2.поле3)]

Ниже приведен пример синтаксиса, с помощью которого можно составлять вложенные инструкции JOIN:



SELECT поля
FROM таблица1 INNER JOIN
(таблица2 INNER JOIN [( ]таблица3
[INNER JOIN [( ]таблицаX [INNER JOIN ...)]
ON таблица3.поле3 оператор_сравнения таблицаX.полеX)]
ON таблица2.поле2 оператор_сравнения таблица3.поле3)
ON таблица1.поле1 оператор_сравнения таблица2.поле2

Операции LEFT JOIN и RIGHT JOIN могут быть вложены в операцию INNER JOIN, но операция INNER JOIN не может быть вложена в операцию LEFT JOIN или RIGHT JOIN.

Похожие:

Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа Работа с sql-сервером в качестве клиента ms access
Запрос sql — это запрос, создаваемый при помощи инструкций sql. Примерами запросов sql могут служить запросы на объединение, запросы...
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа №2 sql запросы для создания таблиц

Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа № Запросы определения данных sql. Задание
Определить схемы разработанных отношений на sql-сервере. Обосновать выбор типов данных атрибутов отношений
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа Основы разработки с sql azure
Субд microsoft sql server для Windows Azure. Работа с sql azure будет достаточно простой для большинства разработчиков, поскольку...
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа Использование редактора запросов sql borland sql explorer(TM) для создания запросов к данным с использованием языка sql. Требования к программному обеспечению
Лабораторная работа Использование редактора запросов sql borland sql explorer(TM) для создания запросов к данным с использованием...
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа №3 «Извлечение информации из таблиц» Вариант №1
Изучить что такое реляционная целостность бд и как она обеспечивается в sql server, как модифицировать данные в таблицах, как использовать...
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛабораторная работа по теме «Построение таблиц истинности с помощью электронных таблиц Excel»
Цель работы: познакомиться с логическими функциями Excel, научиться строить таблицы истинности сложных высказываний
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconСтудент-дипломник
Дипломная работа выполнена на страницах, содержит таблиц и шт графического материала
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЯзык sql § Основные сведения о языке sql в этой главе рассмотрим подробно возможностей языка sql structured
Язык sql впервые был реализован фирмой ibm в начале 70-х годов. После этого были выпущены различные модификации этого языка и соответственно...
Лабораторная работа №7 «Запросы на связях таблиц на языке sql» Группаррггггггг 8292 Студент: Насибулин Ильнур Радикович iconЛекция 12. Запросы манипулирования данными. Специальные запросы. Запросы управления транзакциями. Запросы контроля данных
Сти редактирования существуют и в запросах выборки, т е изменения, сделанные в запросе, автоматически переносятся на базовые таблицы...
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org