|
|
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
assa по поводу "не удалось", и вообще "преклонения мущщин перед самим процессом логического вывода" - щербаков(с) По поводу непреклонного отстаивания однажды выстроенного Михаил Константинович высказался следующим образом: щербаков(c) ... Мастерство свое утроить можешь, Бог с тобою. А ломать - оно не строить. Так же и с судьбою. Скажем, вышла неплохая крепкая обитель, но изъяны различает только сам строитель. Если он принципиальный, даже средь оваций, даже если шум похвальный будет раздаваться, гонор свой подальше сунет, не внимая гвалту, отойдёт, посмотрит, сплюнет и возьмёт кувалду... Был бы я такой же честный, я б не сомневался, Я б за свой домишко тесный этак не держался, Я размел его дотла бы и построил новый. Но такой, видать, я слабый, али бестолковый. Не гнетет меня какая злость или обида. Просто дом я подпираю, как кариатида. Только выдержка мужская, а иных манер - шиш. Ни на миг не отпускает свод, который держишь… ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 13:49 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
softwarerщербаков хороший ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 13:59 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
softwarer пишет: > Странная формулировка. > > Если "выбор планов зависит от порядка join-ов", это очень плохо и > показывает несовершенство оптимизатора. Хотя, помнится, в беседе об ansi Ничуть. Это не плохо и не хорошо, это есть так. Сложность задачи оптимизации JOIN-ов скажем 16 таблиц представляешь себе ? > синтаксисе join-ов некоторые коллеги рассматривали это как преимущество. Здрасте, в традиционном JOIN-е с WHERE всё то же самое, порядок таблиц может быть задан и воспринят оптимизатором. В чем преимущество ? Да нет его. Т.е. оно есть конечно, но не в этом. > Однако, "случайная зависимость" - этот термин меня заинтриговал. Нельзя > ли дать ему какое-либо мало-мальски формальное определение. В контексте данного топика нет нужды. На самом деле я хотел сказать, что странно радоваться, когда понимаешь что разные запросы дают разные планы. Это ж достаточно очевидно. Ну и хотел предостеречь автора от преждевременных выводов. Ну конечно она не абсолютно случайная. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 15:29 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
MasterZivНичуть. Это не плохо и не хорошо, это есть так. Сложность задачи оптимизации JOIN-ов скажем 16 таблиц представляешь себе ? Представляю. И с пониманием отношусь к несовершенству оптимизатора, из-за которого не могу об этом забыть. MasterZiv> синтаксисе join-ов некоторые коллеги рассматривали это как преимущество. Здрасте, в традиционном JOIN-е с WHERE всё то же самое, порядок таблиц может быть задан и воспринят оптимизатором. В чем преимущество ? Да нет его. Т.е. оно есть конечно, но не в этом. Ну, "есть конечно" - это фантастика. Преимущества действительно нет, во всяком случае, как я сказал, лично я такой эффект, если он где-то есть, рассматриваю как недостаток. Различие в "семантике формы записи" между ansi- и where- join-ами таки есть. В ansi явно задается порядок операций (хотя никто не мешает оптимизатору его эквивалентно поменять). В where явного порядка нет; есть порядок таблиц во from (который в принципе можно рассматривать как аналог "порядка join-ов", но не стоит - можно написать запрос, в котором таблицы "в порядке следования" вообще не join-ятся) и есть набор условий, которые могут быть раскиданы в произвольном порядке. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 15:40 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
softwarer пишет: > Различие в "семантике формы записи" между ansi- и where- join-ами таки > есть. В ansi явно задается порядок операций (хотя никто не мешает > оптимизатору его эквивалентно поменять). Да нет никакого явного порядка JOIN-ов ни там, ни там. В ANSI семантика самого JOIN-а задается без противоречий. В этом их преимущество. Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 17:19 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
MasterZivДа нет никакого явного порядка JOIN-ов ни там, ни там. В выражении 1+2+3+4+5 порядок операций задан или нет? В выражении 1+(2+3)+(4+5)? MasterZivВ ANSI семантика самого JOIN-а задается без противоречий. В этом их преимущество. Такое впечатление, что если раскопать, что Вы называете "без противоречий", то придем как раз к однозначному порядку в тех случаях, когда он имеет значение (то есть в outer join-ах). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 17:25 |
|
||
|
ПРОИЗВОДИТЕЛЬНОСТЬ запроса или что такое JOINы??
|
|||
|---|---|---|---|
|
#18+
softwarer пишет: > В выражении 1+2+3+4+5 порядок операций задан или нет? В выражении > 1+(2+3)+(4+5)? Ну тут и задан, и не задан. Полная аналогия с JOIN-ами. Если знаешь, что сложение можно выполнять в любом порядке, то можно выполнять вычисление как угодно, не обращая внимания даже на скобки. Например 2+3 = 5, +5 =10 + (4+1) = 15. или (5+1)*2 + 3. Т.е. наиболее оптимальным способом. Ну да ладно. > Такое впечатление, что если раскопать, что Вы называете "без > противоречий", то придем как раз к однозначному порядку в тех случаях, > когда он имеет значение (то есть в outer join-ах). Нет. Имеется в виду ссылки в запросе на значения полей до и после JOIN-а. Я уже не понимаю, о чем мы спорим. И я и ты - мы оба все прекрасно понимаем (я чувствую ). Чего спорить - то ? Posted via ActualForum NNTP Server 1.4 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.09.2007, 21:00 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=34794311&tid=1544301]: |
0ms |
get settings: |
14ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
59ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 221ms |
| total: | 391ms |

| 0 / 0 |
