Мегаобучалка Главная | О нас | Обратная связь


Исходное дерево запроса



2019-07-03 183 Обсуждений (0)
Исходное дерево запроса 0.00 из 5.00 0 оценок




Исходное дерево для запроса представлено на рисунке 2.21

                                                                                         
 

 

 


                                                

                                                   

 

 


                                          q2

 

 


 

 

                            q1

 

                                                                 product

 

                                   

                                          

                        

                         clients            orders

 

Рисунок 2.21- Исходное дерево запроса

Расчет сложности запроса

Расчет сложности исходного запроса приведен ниже.

 

,                                                                   (2.1)

 

где - результат естественного соединения таблиц;

- таблицы, участвующие в соединении;

 - псевдонимы, используемые вместо имен таблиц для сокращения записи;

 - операция естественного соединения.

 


 

,                                                                      (2.2)

                                        (2.3)

 

где  - число записей в таблице ;

 - число записей в таблице С;

 - число записей в таблице O;

 - число различных значений в столбце clientid таблицы Clients;

 - число различных значений в столбце clientid таблицы Orders.

 

,

,

,

.

, (2.4)

,                                                                               (2.5)

 

где  - число блоков, записанных в таблице ;

 - длина одной записи таблицы  в блоках;

 - длина одной записи таблицы  в байтах;

- размер одного блока.

Очевидно, что

 

,                                                (2.6)

где  - объем в байтах поля ;

- объем в байтах поля ;

 

,

,

.

.

.

.

, (2.7)

,

,

,

,

. (2.8)

.

Очевидно, что

 

,                                    (2.9)

,

,

,

.


 

.

.

                                                                                  (2.10)

 

где  - операция селекции с логической формулой .

Формула  имеет вид:

 

,                                          (2.11)

,

,                                                        (2.12)

.

 

Так как операция селекции не изменяет структуру таблицы, то

 

,

.

Так как операция проекции располагается последней, то ее не учитывают при расчете сложности запроса.

Окончательно имеем:

 

,                                                    (2.13)

.

 


 

2.1

2.2

2.3

2.3.1

2.3.1.1

2.3.1.2

2.3.1.3

2.3.1.4

Оптимизированное дерево запроса

Оптимизированное дерево для запроса представлено на рисунке 2.22

 

                                                                                                                                
     
 

 

 


                                                

                                                        

                                        q3

                          

                                                             

                                                                        

                                                                     

                                                                                      

                         q2

    

                                                                                          

                                                                                      product     

                         

 

 

                        

                          

                 clients                        orders

Рисунок 2.22 - Оптимизированное дерево запроса


 

Текст оптимизированного запроса на языке SQL

Текст оптимизированного запроса представлен на рисунке 2.23

 

SELECT product.productid, product.name_product; FROM product; WHERE (product.name_product = " Fuzafungin ") INTO TABLE k   SELECT sotruds...name, sotruds..serial_pas, sotruds...number_pas, orders.data_zakaza, orders.orderid as Number_Order; FROM ((orders JOIN clients ON orders. sotrudid = sotruds. sotrudid) JOIN k ON k.productid = orders.productid);

Рисунок 2.23

 

Расчет сложности оптимизированного запроса

Расчет сложности оптимизированного запроса приведен ниже.

 

,                                                                         (2.14)

 

где  - операция селекции с логической формулой .

Формула  имеет вид:

 

,                                         (2.15)

,

,

,                                                  (2.16)

.

 


 

Так как операция селекции не изменяет структуру таблицы, то

 

,

.

,                                                                   (2.17)

 

где - результат естественного соединения таблиц;

- таблицы, участвующие в соединении;

 - псевдонимы, используемые вместо имен таблиц для сокращения записи;

 - операция естественного соединения.

 

,                                                                      (2.18)

                                        (2.19)

,

,

,

.

,                                                                        (2.20)

,                                                                               (2.21)

 

где  - число блоков, записанных в таблице ;

 - длина одной записи таблицы  в блоках;

 - длина одной записи таблицы  в байтах;

- размер одного блока.

Очевидно, что

 

,                                                (2.22)

 

где  - объем в байтах поля ;

- объем в байтах поля ;

 

,

,

.

.

.

.

,                                                                               (2.23)

,

,

,

,

, (2.24)

.

 


 

Очевидно, что

 

,                                            (2.25)

,

,

,

.

.

.

 

Так как операция проекции располагается последней, то ее не учитывают при расчете сложности запроса.

Окончательно имеем:

 

,                                                           (2.26)

 

Запрос на деление



2019-07-03 183 Обсуждений (0)
Исходное дерево запроса 0.00 из 5.00 0 оценок









Обсуждение в статье: Исходное дерево запроса

Обсуждений еще не было, будьте первым... ↓↓↓

Отправить сообщение

Популярное:
Организация как механизм и форма жизни коллектива: Организация не сможет достичь поставленных целей без соответствующей внутренней...
Почему люди поддаются рекламе?: Только не надо искать ответы в качестве или количестве рекламы...
Почему двоичная система счисления так распространена?: Каждая цифра должна быть как-то представлена на физическом носителе...
Как распознать напряжение: Говоря о мышечном напряжении, мы в первую очередь имеем в виду мускулы, прикрепленные к костям ...



©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (183)

Почему 1285321 студент выбрали МегаОбучалку...

Система поиска информации

Мобильная версия сайта

Удобная навигация

Нет шокирующей рекламы



(0.005 сек.)