|
SQL наиболее эффективный способ создать структуру БД
|
|||
---|---|---|---|
#18+
Всем привет. У меня нет большого опыта в чистом SQL (я андроид-разработчик), возник такой вопрос: Есть таблица Songs и таблица Users. Я хочу считать каждое прослушивание песни от каждого юзера и показывать это количество ему. Где наиболее эффективно будет хранить информацию о количестве прослушиваний? Были такие идеи: 1) Хранить в каждой Song массив вида [{userId, playsCnt}, ...] 2) Хранить в каждом User массив вида [{songId, playsCnt}, ...] 3) Сделать новую таблицу PlaysCnt, в которой хранить массивы вида [{userId, songId, playsCnt}, ...] Какой способ лучше? Или я что-то упускаю, и есть способы ещё лучше? Заранее благодарен за любую помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2019, 11:21 |
|
SQL наиболее эффективный способ создать структуру БД
|
|||
---|---|---|---|
#18+
hetfieldan24, 3 способ... 4 способ PlaysCnt [{userId, songId, datetimePlay, fullPlay}] но 4 способ даст например интересную статистику = 1) сколько раз слушал 2) когда нравилась песня (в каком году/месяце) 3) время суток когда человек прослушивает эту песню 4) мешали ли человеку (от времени суток) прослушать до конца эту песню 5) и т.д.. и т.п.. (круглый) ... |
|||
:
Нравится:
Не нравится:
|
|||
01.11.2019, 11:30 |
|
|
start [/forum/topic.php?fid=32&fpage=4&tid=1539898]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
38ms |
get tp. blocked users: |
2ms |
others: | 230ms |
total: | 346ms |
0 / 0 |