Учебно-практическое пособие москва 2017 ббк


CREATE TEMP TABLE flights_tt AS SELECT * FROM flights_v



Pdf көрінісі
бет238/243
Дата21.07.2022
өлшемі3,05 Mb.
#147663
түріУчебно-практическое пособие
1   ...   235   236   237   238   239   240   241   242   243
Байланысты:
Язык SQL. Базовый курс

CREATE TEMP TABLE flights_tt AS SELECT * FROM flights_v;
Сформируйте планы для получения простой выборки из представления и из
временной таблицы и сравните полученные результаты. Как вы думаете, поче-
му план, сформированный для получения даже простой выборки из представ-
ления, многоуровневый?
EXPLAIN ANALYZE SELECT * FROM flights_v;
EXPLAIN ANALYZE SELECT * FROM flights_tt;
Выполните более сложные запросы к представлению и временной таблице
и сравните полученные результаты. Включайте в команду EXPLAIN опцию
ANALYZE, чтобы увидеть фактические затраты времени.
Подумайте, при выполнении каких запросов к базе данных «Авиаперевозки»
было бы целесообразно создать временную таблицу. Создайте ее и проведите
эксперименты, подтверждающие эффективность ее использования.
12. Одним из способов повышения производительности является изменение схемы
данных, связанное с денормализацией, а именно: создание индексов.
Выполните следующий простой запрос к таблице «Билеты» (tickets):
EXPLAIN ANALYZE
SELECT count( * ) FROM tickets
WHERE passenger_name = 'IVAN IVANOV';
Создайте индекс по столбцу passenger_name:
CREATE INDEX passenger_name_key ON tickets ( passenger_name );
Теперь повторите запрос и сравните полученные планы и фактические резуль-
таты.
Предложите какой-нибудь запрос к базе данных «Авиаперевозки», для выпол-
нения которого было бы целесообразно создать индекс. Создайте индекс и по-
вторите запрос. Изучите полученный план, посмотрите, используется ли индекс
планировщиком.
13.* В самом конце главы мы выполняли оптимизацию запроса путем создания ин-
декса и модификации текста запроса. Был сформирован такой запрос:
EXPLAIN ANALYZE
SELECT num_tickets, count( * ) AS num_bookings
FROM (
SELECT b.book_ref, count( * )
FROM bookings b, tickets t


Достарыңызбен бөлісу:
1   ...   235   236   237   238   239   240   241   242   243




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет