|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
Здравствуйте! Предупреждаю, что крайне слабо разбираюсь в sql. Делаю модуль с таблицами (в основном прайс-листы) на PHP, mySQL и JS. Могу изменять структуру таблиц и всего как угодно, но не могу понять как правильно. Есть TABLES , которая хранит номера строк через запятую. Есть таблица со строками TABLES_STRINGS , которая хранит ID строк и номера блоков, из которых она состоит. Одна строка может быть в разных таблицах. В таблице TABLES_BLOCKS блоки хранят свои ID, NAME и какие-то свойства, но без содержимого. У каждого блока может быть неограниченное количество вариаций содержимого - они хранятся в таблице TABLES_BLOCKS_VAR со своими ID и т.п. Есть таблица TABLES_STRINGS_BLOCKS_VAR , которая хранит информацию о том, в какой таблице какая вариация блока в строке ( TABLE_ID , STRING_ID , BLOCK_ID , VAR_ID ). Всё это сделано для сколь угодно таблиц(прайсов) с разным составом строк, но где-то может отличаться тайтл или цена или другой блок. Зато, если поменять цену в одном блоке, то цена поменяется во всех таблицах, где она есть. Какая-то синхронизация. Для sql я пользуюсь библиотекой ORM RedbeanPHP, в ней можно и простые запросы делать. Вопросы: 1) Если писать вложенные запросы или JOIN-ами делать, будет ли какой-то профит в скорости? Стоит ли оно того? 2) Проще не париться и сделать несколькими запросами? можно упростить и хранить JSON в самой первой таблице с строками, блоками и их вариантами. Далее разобрать всё в PHP, но это уже будет не один запрос к базе, а как минимум 2-3. Стоит ли? 3) Многие ко многим, один ко многим - это моя тема, как то может помочь? Никак не могу понять( Я уверен, что можно сделать лучше, но не понимаю как. Не хотелось бы месяцы тратить на изучение. Помогите, пожалуйста правильно раскидать задачу. P.S. Есть таблица excel с демо-версией таблиц и запросом с JOIN-ами в прикреплённом и по ссылке на Я.диске: https://disk.yandex.ru/i/oR98-Pt62ZZeIw ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2021, 20:34 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
koller18 Есть TABLES , которая хранит номера строк через запятую. Уже неправильно. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2021, 21:54 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
Akina, а как правильно? Мне нужно, чтобы был понятен порядок какая строка за какой идёт. Также они могут удальтся, перемещаться, заменяться ... |
|||
:
Нравится:
Не нравится:
|
|||
15.08.2021, 23:23 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
Вы уж не поленитесь, почитайте, что такое нормальные формы. Описанные Вами CSV с ними и близко не стояли. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 07:57 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
koller18, koller18Не хотелось бы месяцы тратить на изучение. А придется )) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 13:37 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
MikkiMouse, к сожалению, я уже понял, что никто не поможет (на этом форуме). Хотя эта задача на 30 секунд для профессионала. Раскидать задачу, указать что делать, хотя бы направление указать. Но это же не для Российского форума, да?)) Очень жаль видеть такие комменты, как у Akina, абсолютно бесполезные. Сам веду также форум, помогаю чем могу, люди удивляются, что с ними на от*бись общались на других форумах, а меня удивляет, что задачи простые, с меня не убудет. Если не собираешься отвечать, то зачем вообще писать что-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 14:02 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
koller18, не надо бросаться словами . Akina дал очень правильный ответ. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 14:30 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
koller18 я уже понял, что никто не поможет (на этом форуме). Хотя эта задача на 30 секунд для профессионала. koller18 Очень жаль видеть такие комменты, как у Akina, абсолютно бесполезные. koller18 Если не собираешься отвечать, то зачем вообще писать что-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.08.2021, 15:44 |
|
Помогите раскидать задачу
|
|||
---|---|---|---|
#18+
koller18 Не хотелось бы месяцы тратить на изучение. Как научиться проектировать реляционные базы данных за полчаса )) ... |
|||
:
Нравится:
Не нравится:
|
|||
17.08.2021, 07:20 |
|
|
start [/forum/topic.php?fid=47&msg=40090900&tid=1827981]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
199ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
others: | 236ms |
total: | 531ms |
0 / 0 |