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

Может кто помочь с проектированием бд для приложения чатов по

типу телеграма? Чаты могут быть личные (2 человека) и групповые (много людей). Их храню в одной таблице chats. Вот только проблема в том, что для личного чата много лишних полей с NULL (на самом деле все из них не нужны). Но это удобно в том плане, что могу получить список чатов одним запросом. Как думаете, есть ли способ организации получше или так тоже можно оставить?

type это тип (dialog/group)
accessibility это доступность (public/private) только для групп

23 ответов

26 просмотров

пихай всё в json.

ruslan- Автор вопроса
Roman
пихай всё в json.

сделать у чата поле data типа json?

А где поля то лишние????

скоро пг про продвинут свои патчи для json в апстрим и заживём)

Какие?

central hardware
Какие?

например. https://habr.com/ru/companies/oleg-bunin/articles/646987/

Roman
скоро пг про продвинут свои патчи для json в апстр...

Главное судьбу инфомикс не повторить))))

Konstantin Zaitsev
Главное судьбу инфомикс не повторить))))

кто такие, чем интересна их судьба?

Roman
кто такие, чем интересна их судьба?

Лидер СУБД ))) давнишний Интересна потерей фокуса)

ruslan- Автор вопроса

Всё ещё не разобрался?))) Что мешает выделить это в отдельную таблицу? Разделить чаты по типу

ruslan- Автор вопроса
Makar M.
Всё ещё не разобрался?))) Что мешает выделить это ...

Ну тогда личные чаты вообще не будут иметь полей У меня была другая идея, но она посложней. Я решил оставить так. Похер, пусть будут пустые поля)

ruslan
Ну тогда личные чаты вообще не будут иметь полей У...

Ну как минимум надо знать от кого кому сообщения слать..

ruslan- Автор вопроса
Виктор Пронин
Ну как минимум надо знать от кого кому сообщения с...

А не, Сообщения ссылаются на чат, к которому относятся

ruslan
А не, Сообщения ссылаются на чат, к которому относ...

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

ruslan- Автор вопроса
Виктор Пронин
Смотри, есть у тебя две роли, издатель и подписчик...

Да я уже забил. Ну нулл так нулл. Хрен с ним. Других идей нет. И на стаке не нашел и тут

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта