Робота із вкладеними запитами. Об’єднання таблиць

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
РТ
Кафедра:
Кафедра САПР

Інформація про роботу

Рік:
2010
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Інші
Група:
ІТП

Частина тексту файла (без зображень, графіків і формул):

МІНІСТЕРСТВО ОСВІТИ ТА НАУКИ УКРАЇНИ Національний університет «Львівська політехніка» Кафедра САПР З В І Т про виконання лабораторної роботи № 7-8 на тему: «Робота із вкладеними запитами. Об’єднання таблиць» з курсу: «Проектування банків даних для комп’ютерних систем проектування» Львів – 2010 МЕТА РОБОТИ Ознайомлення роботи з вкладеними запитами, а також вивчити їх основні можливості. Навчитися об’єднувати таблиці, робити складні запити. ТЕОРЕТИЧНІ ВІДОМОСТІ Підзапитом називають запит selectякий включається в інший запит як параметр або вираз. Вони зазвичай використовуються, щоб генерувати значення або набір результатів, які використовуються в умовах головного запиту. Співвіднесений підзапит є єдиною відмінністю між записами для головного запиту, оскільки тільки він залежить від значень, які міняються від запису до запису. interbase виконує такий підзапит багато раз, по разу для кожного запису батьківського підзапиту. Обчислення кожного запису є великим програшем в продуктивності по відношенню до незв'язаного підзапиту. interbase оптимізує незв'язані підзапити зовні циклі, виконує їх тільки один раз, використовуючи потім результати як окремий набір даних. Ось приклад зв'язаного підзапиту: select * from department d where exists ( select * from employee e where e.emp_no = d.mngr_no and e.job_country = 'england') А ось приклад ідентичного запиту з використанням об'єднання: select d.* from department d join employee e on d.mngr_no = e.emp_no where e.job_country = 'england' План виконання запиту. План описує сценарій, по якому оптимізатор вирішив виконати запит. Для деяких типів запитів оптимізатор не в змозі вибрати реально оптимальний план. Людина може проаналізувати різні плани і, вибравши потрібний, перекрити їм план, вибраний оптимізатором. Результатом може бути приголомшливе збільшення швидкості на деяких типах запитів. У самих запущених випадках можна зменшити час виконання 15-ти хвилинного запиту до трьох секунд. Можливість указувати план запиту була додана в gpre і dsql/isql. Таким чином, пряма вказівка плану запиту працюватиме в тілі перегляду(view), процедурі, що зберігається, або трігері. Підготовка запитів і параметри запиту interbase підтримує запити з параметром в dsql для тих випадків, коли вказаний запит виконуватиметься кілька разів з різними значеннями. Наприклад, заповнення таблиці даними може вимагати серію команд insert із значеннями для кожного запису. Застосування запитів, що параметризуються, безпосередньо збільшує продуктивність, оскільки interbase зберігає внутрішнє представлення запиту і його оптимізований план після одноразової підготовка запиту. Використання запитів, що параметризуються, в delphi відбувається наступними кроками: Помістите пойменований параметр в запиті на місці постійної величини. interbase не підтримує параметри ніде, окрім як в константах, таблиці і імена полів не можуть описуватися параметром. Підготуйте запит, використовуючи для цього метод prepare компоненту tquery. delphi готує запит, якщо він ще не підготовлений кожного разу перед виконанням. Після виконання запиту його підготовка автоматично знімається. Таким чином, підготовка запиту заздалегідь запобігає безглуздій підготовці і відміні підготовки при каждім виклику запиту. Привласніть параметри. Наприклад, для компоненту tquery використовуйте для цього метод parambyname. Виконаєте запит. Вирази select повинні відкриватися методом open, а insert, update і delete повинні активуватися метом execsql. Відмінити підготовку запиту. Це робиться методом unprepear компоненту tquery. У деяких реальних випадках, що включають дії, що повторюються, використання запитів, що параметризуються, збільшує продуктивність на 100% ПОСТАНОВКА ЗАВДАННЯ Бібліотека обслуговує читачів. Вона складається з читальних залів. На кожного читача заведена карточка яка містить інформацію про читача і прочитані книги. В читальному залі працює персонал. Існує абонемент. ВИКОНАННЯ РОБОТИ Робота із вкладеними запитами 1. SELECT misce FROM bilet WHERE vagon = '11';   2. SELECT imya , pobatkovi, prizvushche FROM pasagur WHERE nomer_poizdy IN (111,12,156)   3. SELECT prizvushche FROM pasagur WHERE nomer_poizdy IN (SELECT nomer_poizdy FROM poizd WHERE tup_poizdy = 'diesel');   4. SELECT providnuk FROM vagon WHERE vagon IN (SELECT vagon FROM bilet WHERE kinceva_stanciya IN (SELECT kinceva_stanciya FROM poizd WHERE chas_prubyttya));       Об’єднання таблиць SELECT prizvushche,imya,kinceva_stanciya,cina FROM pasagur, bilet WHERE pasagur.nomer_bilety=bilet.misce ORDER BY prizvushche;  SELECT vagon,zavod,vugotovleuy FROM harakterustuka_vagony WHERE vagon in (SELECT vagon FROM bilet WHERE cina > 15);  SELECT p1.prizvushche,p2.imya FROM pasagur AS p1,pasagur AS p2 WHERE p1.nomer_bilety = p2.nomer_bilety AND p1.nomer_bilety < 50;  SELECT pasagur.prizvushche,pasagur.seriya_documenta,poizd.data_vidpravlennya,poizd.chas_vidpravlennya FROM pasagur LEFT OUTER JOIN poizd ON pasagur.nomer_poizdy = poizd.nomer_poizdy;  ВИСНОВОК На даній лабораторній роботі, я навчився створювати вкладені запити. Розробив до своєї бази даних дані запити, і побачив що вони працюють і виводять коректні результати.
Антиботан аватар за замовчуванням

20.07.2020 12:07-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!