172 похожих чатов

Что обычно применяется джоины иди подзапросы? Я так понимаю, что

лучше делать с джоинами в целом и не парится, но если явно видно, что подзапрос будет лучше или без него не обойтись, то нужно применять его, да ?

7 ответов

15 просмотров

Чаще всё-таки применяются JOIN-ы, мне кажется. Если кажется, что подзапрос будет лучше, то можно подумать, не придётся ли потом переделывать его в JOIN (насколько вероятно, что придётся возвращать не одно значение, а несколько; или несколько записей)? > или без него не обойтись Да уж обойтись-то можно почти всегда.

Yaroslav Schekin
Чаще всё-таки применяются JOIN-ы, мне кажется. Есл...

(SELECT ... ORDER BY xxx LIMIT 1) эффективно пока что не заменить примерно никак.

Ilya Anfimov
(SELECT ... ORDER BY xxx LIMIT 1) эффективно пока ...

А перед может быть написано [LEFT|CROSS] JOIN LATERAL — это JOIN или подзапрос? ;) > эффективно пока что не заменить примерно никак. Нередко можно заменить CTE+ROW_NUMBER() или DISTINCT ON — и это может быть даже эффективнее (зависит от распределения/количества значений).

да. Джойны тогда, когда ты надеешься на внутренние алгоритмы слияния, подзапросы - когда контролируешь это руками. Иногда это более эффективно, и семантически проще, но далеко не всегда.

D
да. Джойны тогда, когда ты надеешься на внутренние...

> когда ты надеешься на внутренние алгоритмы слияния, Хмм... о чём речь? > подзапросы - когда контролируешь это руками Большинству современных планировщиков/оптимизаторов запросов на такой "контроль" как-то... (они всё равно преобразуют подзапросы в JOIN в большинстве случаев, если это вообще возможно).

Yaroslav Schekin
> когда ты надеешься на внутренние алгоритмы слиян...

только в тех случаях, когда действительно можно обойтись слиянием. Это касается большинства запросов, но не всех, особенно тех что не после where.

D
только в тех случаях, когда действительно можно об...

Ну так об этом и речь — в большинстве случаев subquery pullup будет выполнен, т.о. "контролировать" план таким образом не получится.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта