русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Приклад двотабличного запиту.


Дата добавления: 2015-07-09; просмотров: 471; Нарушение авторских прав


Щоб зрозуміти, як в SQL реалізуються багатотабличні запити, розглянемо простий запит , який з’єднує дані із двох різних таблиць:

55). Вивести список всіх замовлень, тобто номер і вартість замовлення, а також прізвище клієнта, який зробив це замовлення і величину наданого кредиту клієнту.

Чотири елемента даних, які необхідно отримати, зберігаються в двох різних таблицях:

  • В таблиці „Замовлення” міститься номер і вартість кожного замовлення, але в ній немає прізвищ клієнтів і величин наданих їм кредитів.
  • В таблиці „Клієнт” міститься прізвище клієнтів і дані про стан їх рахунків, але в ній немає інформації про замовлення.

Зауважимо, що між двома цими таблицями існує зв’язок: в кожному рядку стовпчика Клієнт таблиці замовлення міститься ідентифікатор клієнта, який зробив це замовлення і цей ідентифікатор відповідає значенню одного з рядків стовпчика Код_Клієнта таблиці клієнти.

Очевидно, що отримати необхідні результати, в операторі SELECT, необхідно якимось чином врахувати цей зв’язок між таблицями.

Таблиця Clients

Kod_Clienta Prizv ….. Credit ….
…….       . . .      
         

 

Таблиця Zamovlennia

No_Zamovl …… Client …… Vartist
    . . .     . . .    

 

Результати запиту

No_Zamovl Vartist Prizv Credit
         
       

Розглянемо, як такий запит можна виконати вручну, за допомогою ручки і паперу:

1). Спочатку намалюйте таблицю для результатів запиту, яка містить 4 стовпчики; запишіть імена стовпчиків. Потім – перейдіть до таблиці Zamovlennia і почніть із першого рядка;



2). Знайдіть в рядку для першого замовлення його номер (101) і вартість (68 грн.) і перепишіть ці значення в перший рядок таблиці результатів;

3). В рядку для першого замовлення знайдіть ідентифікатор клієнта, який зробив це замовлення (01). Перейдіть до таблиці Clients і в стовпчику Kod_Clienta знайдіть рядок з ідентифікатором клієнта 01;

4). В даному рядку таблиці Clients знайдіть прізвище клієнта (Дід) і величину його кредиту (100 грн.), та перепишіть ці значення в перший рядок таблиці результатів;

5). Це – тільки, перший рядок таблиці результатів! Верніться до таблиці Zamovlennia і повторюйте процес, починаючи з пункту 2, до тих пір, поки не переберете всі замовлення.

Насправді, СУБД може виконувати цей запит іншим способом, але як би його не виконувати, завжди будуть справедливі дві речі:

  • 1). кожний рядок таблиці результатів запиту формується із пари рядків: один рядок – знаходиться в таблиці Zamovlennia, другий - в таблиці Clients.
  • 2). для пошуку такої пари рядків виконується порівняння відповідних стовпчиків у цих таблицях (такі стовпчики називаються – зв’язані стовпчики).


<== предыдущая лекция | следующая лекция ==>
Правила виконання SQL – запиту на вибірку (остаточний варіант) | Clients


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.427 сек.