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

Здравствуйте. У меня в бд есть темы на форуме -

ForumTopics. Среди всего прочего там есть поля userId - автор темы, createdAt - дата создания. Сейчас встал вопрос как получить вместе со всем имя автора и дату последнего сообщения. Подскажите, разумно ли будет хранить в ForumTopics поля типа lastUserId, lastMsgId(или просто lastMsgCreatedAt)?

11 ответов

8 просмотров

Вы проектируете реальный форум? Для учебной задачи надо вытаскивать подзапросом (считай, джойном). В реальной эксплутации нагруженного ресурса может потребоваться материализация, о которой вы говорите. Но для ускорения выборок, а не упрощения написания запросов)

Kathy-Ti Автор вопроса
Kathy Ti
материализация?

это про хранение нужных полей сразу где мне нужно, а не по id вытаскивать?

Kathy Ti
материализация?

Да. Это такой паттерн проектирования структур, осознанно не соответствующих нормальным формам разных степеней

Roman Sergeev
Да. Это такой паттерн проектирования структур, осо...

Но сначала нужно научиться работать с нормальной формой данных

Kathy-Ti Автор вопроса
Slava Rozhnev SQLtest.online https://phpize.online
Согласен, только это называется денормализация

ну т.е. это практикуется? просто в голове парадигма что мол реляционка, тут всё на всё ссылается

Kathy Ti
это про хранение нужных полей сразу где мне нужно,...

Да. Messages будут самой большой таблицей в базе со всеми вытекающими

Kathy Ti
ну т.е. это практикуется? просто в голове парадигм...

Практикуется. Просто это не способ упрощения написания запросов студентами. А решение, за которым стоит исследование реальных проблем. И которое несёт за собой экстра-расходы на реализацию синхронизации

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

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

читать файл максимально быстро? странный вопрос))
zamtmn
53
тоесть, указав return eax, сгенерируется никому ненужная инструкция mov eax,eax ?
Aiwan \ (•◡•) / _bot
24
Приветствуем всех! Устали без проектов? Если вы программист и хотите получать стабильные заказы, компания Elif предлагает вам недельный курс по поиску проектов и их ведению. ...
Elif
1
А чего сейчас в моде вместо Error для эксепшенов? А то я тут внезапно узрел что он не рекомендуется :) У Try::Tiny какой-то совершенно ужасный синтаксис если надо конкретные э...
Denis F
19
а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Привет. Сразу скажу, что на C/C++/Rust я не пишу, но тем не менее возникла потребность дебага C/C++/Rust кода. Суть: есть серверное приложение, которое периодически ведёт себ...
ninekeem 🐳
4
всем привет! углубившись в плюсы и начав изучать реверсинг понял, что без асм'а никуда со своими высокоабстрактными представлениями начал изучать механизмы асма, и не совсем п...
9
Всем привет, после Си стоит учить плюсы или лучше на раст перейти?
Linus
8
или вы считаете муит дает знание?
супер_лох_3000 альфа версия
12
значить например он учился в СДУ то получается он особенный?)
Asets Serikov
11
Карта сайта