|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
блядь, просто йобаная классика Именно для таких долбойобов я пишу статьи, но долбойобы, разумеется, хуй их читают ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:41 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
блядь, просто йобаная классика Именно для таких долбойобов я пишу статьи, но долбойобы, разумеется, хуй их читают ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:42 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Почему нет? Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:44 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
basename [игнорируется] И я не уверен, что твоё условие attach.name is not null имеет смысл, как я понимаю у деды любой аттач имеет имя. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:45 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Почему нет? Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. Он все присоединил вначале, потом просто отобразил, что попросили. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:46 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Без него просто показывает в столбце - null. Короче, примеры надо показывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 21:49 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Он же все равно сканит таблицу полностью, потом селект делает. Так? По уму может выбрать посты по юзер_ид, а потом уже к ним присоединить всё остальное. В любом случае, если ты ищешь аттачи, то лефт убирай. Ну я я бы всё равно начал с аттачей,как бы привык начинать оттуда, что ищу. Что-то вроде Код: SQL 1. 2. 3. 4.
... |
|||
:
Изменено: 07.06.2022, 21:52 - Горбатый ёж
Нравится:
Не нравится:
|
|||
07.06.2022, 21:50 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Без него просто показывает в столбце - null. Короче, примеры надо показывать. Значит я ошибаюсь. Потому что лефт джойн используется. ... |
|||
:
Изменено: 07.06.2022, 21:52 - Горбатый ёж
Нравится:
Не нравится:
|
|||
07.06.2022, 21:51 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
left join не нужен. Просто JOIN. И тогда не нужно будет и условие and v1_attachment.name is not null;. Такие записи сами отсекутся при выполнении on v1_post.id = v1_attachment.post_id Это с какого суахили? Я понимаю, что в данном случае имя у атачмента вряд ли будет null, но как оно связано с джойном и лефт джойном, мне понять не суждено. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:00 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
basename [игнорируется] Чего там прикладывать? Лефт везде убери, раз тебе атачменты нужны. С лефт джойном. Ты берёшь, получаешь все посты пользователя и пришпандориваешь аттачи к тем постам, где они есть, вот тебе и дубли. Туда же ещё и темы пришпандориваешь так же. Смысла лефт джойна тем и постов нет, потому что темя с постами связаны по любому. А так как тебе надо только посты с аттачами, то и смысла лефт джойна с аттачами тоже нет. ЗЫ но я не так лефты пишу, раз он левый то присобачиваемую таблицу пишу слева от знака =. Типа эстет. У Бази в первоначальном запросе на таблицу постов накладывается ограничение по юзер_ид, что в случае индекса по юзер_ид инклуде (пост_ид, топик_ид) сведётся к поиску по индексу для выделения постов автора и джоину по относительно небольшому числу постов конкретного юзера. Правда у него тогда в where мешает условие на is not null для вложения. З.ы. нет планов - нет аналитики. З.з.ы. вышеописанное применительно к ms sql, чего там с оптимизатором mysql - я хз ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:01 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Потому что лефт покажет записи из постов даже те, у которых нет аттачей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:02 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Условие в предложении where, а не в on соединения ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:03 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Почему нет? Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. Он все присоединил вначале, потом просто отобразил, что попросили. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:05 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Почему нет? Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. Он все присоединил вначале, потом просто отобразил, что попросили. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:12 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
... Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. Он все присоединил вначале, потом просто отобразил, что попросили. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:15 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
... Зачем тебе они, если ты аттачи ищешь? И зачем тебе показывать посты, которые не привязаны к топикам (с лефтом именно так ты и делаешь), если это как минимум странно? Как там планы в таком случае это майскуль построит ХЗ. Он все присоединил вначале, потом просто отобразил, что попросили. Но открывает простор для действий оптимизатора, может пойти по неоптимальному пути (мой длинный пост выше) и отработать заметно медленнее с привлечением заметно большего числа ресурсов. З.Ы. Нужны планы. З.З.Ы. планы имеют тенденцию становиться неактуальными с увеличением числа записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:17 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
блядь, просто йобаная классика Именно для таких долбойобов я пишу статьи, но долбойобы, разумеется, хуй их читают Там моя подпись, так чот ищи сам но в двух словах классическая ошибка - это фильтрация по "правой" таблице при лефт джойне, которая превращает аутер в иннер. если изначально и нужен был иннер, то в нормальных серверах рояли особо не играет. Если оптимизатор говно - рояль может быть второй классический случай - использование дистинкта при неправильной работе с мастер-слейв вместо того чтобы юзать exists (который на самом деле нужен), некто юзает джойн со слейвом, получает мультипликацию хедера, пугается и пиздячит туда дистинкт На самом деле для разовых запросов - практически похуй как ты что там пишешь. Ну поебётся сервер минуту вместо того чтобы выполнить запрос за полсекунды - всем похуй, запрос разовый, лишь бы результат был правильный но если запрос выполняется постоянно и многократно - то тут конечно приходтся смотреть как что писать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:25 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
в случае иннер джоина условия соединения равносильны условиям в предложении where и оптимизатор может снача на сотни тысяч записей в таблице постов начать джоинить другие таблицы, что может потребовать выделения значительного объема ОЗУ и сброса результата в tempdb, что не есть продуктивно. Простите, был напуган. это бред, сорян. По крайней мере для скуля (судя по темпдб) Для мелких серверов с хуевым оптмизатором - может быть правдой. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:26 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
З.з.ы. вышеописанное применительно к ms sql, чего там с оптимизатором mysql - я хз ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:27 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Йожег попутал, у тебя is not null в where, а не в on Но открывает простор для действий оптимизатора, может пойти по неоптимальному пути (мой длинный пост выше) и отработать заметно медленнее с привлечением заметно большего числа ресурсов. З.Ы. Нужны планы. З.З.Ы. планы имеют тенденцию становиться неактуальными с увеличением числа записей. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:27 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Йожег попутал, у тебя is not null в where, а не в on ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:29 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
Завязывай спрашивать, делай что советуют ... |
|||
:
Изменено: 07.06.2022, 22:31 - PaNik
Нравится:
Не нравится:
|
|||
07.06.2022, 22:31 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
вначале у меня какие-то дубли получались так вроде и задача была " нужно выводить список вложений" - значит ты мог получить в одной теме несколько постов - если в посте было несколько аттачей ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:31 |
|
Господа базоёбы, скок сюды
|
|||
---|---|---|---|
#18+
блядь, просто йобаная классика Именно для таких долбойобов я пишу статьи, но долбойобы, разумеется, хуй их читают Там моя подпись, так чот ищи сам но в двух словах классическая ошибка - это фильтрация по "правой" таблице при лефт джойне, которая превращает аутер в иннер. если изначально и нужен был иннер, то в нормальных серверах рояли особо не играет. Если оптимизатор говно - рояль может быть второй классический случай - использование дистинкта при неправильной работе с мастер-слейв вместо того чтобы юзать exists (который на самом деле нужен), некто юзает джойн со слейвом, получает мультипликацию хедера, пугается и пиздячит туда дистинкт На самом деле для разовых запросов - практически похуй как ты что там пишешь. Ну поебётся сервер минуту вместо того чтобы выполнить запрос за полсекунды - всем похуй, запрос разовый, лишь бы результат был правильный но если запрос выполняется постоянно и многократно - то тут конечно приходтся смотреть как что писать ... |
|||
:
Нравится:
Не нравится:
|
|||
07.06.2022, 22:37 |
|
|
start [/forum/topic.php?fid=24&msg=58731&tid=2074]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
1197ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
103ms |
get tp. blocked users: |
2ms |
others: | 22ms |
total: | 1370ms |
0 / 0 |