powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Дублирование данных для оптимизации запроса
12 сообщений из 12, страница 1 из 1
Дублирование данных для оптимизации запроса
    #38747733
Subaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть две таблицы User и Section со связью м. к м.
Возникла задача, при отображении пользователя выводить состоит ли он в какой-нибуть секции.

Как вариант делать запрос с джоинами и смотреть COUNT > 0 или нет.

А что если сделать у User, поле is_section и при добавление или удалении связей менять его значения.
Является ли это оптимизацией и можно ли так делать?

Необходимо учитывать, что пользователей на странице может быть 30-50 + по этому полю может быть фильтр.
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747738
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SubaroКак вариант делать запрос с джоинами и смотреть COUNT > 0 или нет.Есть же EXISTS
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747761
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SubaroЕсть две таблицы User и Section со связью м. к м.Значит, есть как минимум третья таблица. Или база денормализована.
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747764
Subaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Да, есть. В EXIST же тоже запрос будет выполнятся. А в моем случае с дублированием никаких доп. запросов не будет.
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747767
Subaro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina,

есть таблица User_Section
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747772
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Переопределение данных - потенция нарушения целостности. Для этого нужно иметь очень веские основания. Которых я лично в данном случае в упор не вижу.
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747799
Фотография Lumix
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SubaroА что если сделать у User, поле is_section и при добавление или удалении связей менять его значения.
Является ли это оптимизацией и можно ли так делать?


мы в своих проектах так и делаем, причем мы это обновляем не в момент добавления или удаления связей, а проводим подобный пересчет отдельной операцией
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747802
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AkinaПереопределение данных - потенция нарушения целостности. Для этого нужно иметь очень веские основания. Которых я лично в данном случае в упор не вижу.+много.
Subaromiksoft,

Да, есть. В EXIST же тоже запрос будет выполнятся.Не "тот же", а более экономичный, чем "запрос с джоинами и смотреть COUNT > 0 или нет"
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38747855
alex564657498765453
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как я понял у вас три таблицы одна вторая и связь многие ко многим.

то о чем вы предлагаете - нормальная тема - денормализация для ускорения... а поднятый вопрос о нарушении целосности...

можно сделать таблицу отдельно с денормализованой структурой, и когда чтото меняеться в этих трёх, перещитывать денормализованную...или ваще тригерами точечно её править....

вариантов куча, но как верно заметили, денормализация это гемор, и прежде чем туда ити, надо подумать стоит ли оно того.
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38749152
bochkov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
денормализация здесь не нужна,
что мешает запросы делать?
мускл шустрый, справится
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38749432
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bochkovденормализация здесь не нужна,
что мешает запросы делать?
мускл шустрый, справится
А как вы определяете, если время, объемы данных и планы запросов пока не конкретизировались ?
...
Рейтинг: 0 / 0
Дублирование данных для оптимизации запроса
    #38749436
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindbochkovденормализация здесь не нужна,
что мешает запросы делать?
мускл шустрый, справится
А как вы определяете, если время, объемы данных и планы запросов пока не конкретизировались ?По фразе:SubaroНеобходимо учитывать, что пользователей на странице может быть 30-5030-50 EXISTS-ов стоят не так уж дорого.
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Дублирование данных для оптимизации запроса
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]