Клубове Дир.бг
powered by diri.bg
търси в Клубове diri.bg Разширено търсене

Вход
Име
Парола

Клубове
Dir.bg
Взаимопомощ
Горещи теми
Компютри и Интернет
Контакти
Култура и изкуство
Мнения
Наука
Политика, Свят
Спорт
Техника
Градове
Религия и мистика
Фен клубове
Хоби, Развлечения
Общества
Я, архивите са живи
Клубове Дирене Регистрация Кой е тук Въпроси Списък Купувам / Продавам 15:59 02.05.24 
Клубове/ Компютри и Интернет / Бази данни Всички теми Следваща тема Пълен преглед*
Информация за клуба
Тема Re: По принцип има [re: wqw]
Автор TPECKATA (втрещен)
Публикувано03.04.07 16:12  



Така, отвори дебелите книги за кой да е СБД (MS SQL, Oracle, Postgre SQL) и ще видиш, че условията в JOIN имат приоритет пред условията в WHERE.
Т.е. JOIN-а се извършва винаги преди да се проверят WHERE условията.
Пределно ми е ясно че MS SQL Server (а вероятно и други СБД) си прави execution plan преди да почне да обработва дадена SQL заявка.

Да, също така знам, че ANSI SQL е декларативен, но ако ще се заяждаме има и SQL разширения които малко или много започват да се различават от дефиницията за декларативен език.

Прочети ми мнението още веднъж и виж, че съм казал, че някои СБД могат да оптимизират Cross Join заявки, и това което съм написал е "по принцип", т.е. разбирай на теория, според това което пише по разни книги за SQL.

Поздрави


П.П. Ще ти препоръчам да прочетеш


където е правен практически тест, и наистина няма съществена разлика в бързодействието и е казано
the SQL Server does a wonderful job of optimizing the statements prior to execution


И един друг пример, в които се вижда разликата между условията след where и след ON клаузите:

The WHERE clause acts on the results after the JOIN has been completed

Ако ти се занимава пробвай да видиш какво е бързодействието при реализация на (таблица самa към себе си) с INNER JOIN и с CROSS JOIN.


В Интернете много психов,
Каждый пятый - это псих.
Говори со мною тихо,
Может я один из них

Редактирано от TPECKATA на 03.04.07 17:03.



Цялата тема
ТемаАвторПубликувано
* LEFT JOIN vs RIGHT JOIN jmut   26.04.05 14:05
. * Re: LEFT JOIN vs RIGHT JOIN salle   26.04.05 16:06
. * Re: LEFT JOIN vs RIGHT JOIN jmut   26.04.05 17:00
. * Re: LEFT JOIN vs RIGHT JOIN тoшo   27.04.05 00:06
. * Re: LEFT JOIN vs RIGHT JOIN jmut   27.04.05 10:30
. * Re: (a > b) != (a < b) :) salle   27.04.05 11:21
. * Re: LEFT JOIN vs RIGHT JOIN nasko   27.04.05 11:26
. * Re: LEFT JOIN vs RIGHT JOIN тoшo   28.04.05 06:53
. * Re: LEFT JOIN vs RIGHT JOIN jmut   28.04.05 09:53
. * Теоретично TPECKATA   15.11.05 21:12
. * Re: Теоретично bal-bal   30.03.07 21:14
. * По принцип има TPECKATA   30.03.07 21:46
. * Re: По принцип има bira_more   31.03.07 01:30
. * Re: По принцип има wqw   03.04.07 15:12
. * Re: По принцип има TPECKATA   03.04.07 16:12
. * Re: По принцип има wqw   03.04.07 18:55
. * Re: По принцип има TPECKATA   03.04.07 19:03
. * Re: По принцип има wqw   03.04.07 19:46
. * Тези заявки са еквивалентни, защото TPECKATA   03.04.07 20:39
. * Re: Тези заявки са еквивалентни, защото wqw   04.04.07 12:11
Клуб :  


Clubs.dir.bg е форум за дискусии. Dir.bg не носи отговорност за съдържанието и достоверността на публикуваните в дискусиите материали.

Никаква част от съдържанието на тази страница не може да бъде репродуцирана, записвана или предавана под каквато и да е форма или по какъвто и да е повод без писменото съгласие на Dir.bg
За Забележки, коментари и предложения ползвайте формата за Обратна връзка | Мобилна версия | Потребителско споразумение
© 2006-2024 Dir.bg Всички права запазени.