Я хочу сохранить этот список списков, но я не знаю, как его хранить в MySQL
list[x][y] the items in this list contains {li:[{x:x,y:y}] , pos:{x:y}}
list[x][y].li[z].x
list[x][y].li[z].y
list[x][y].pos.x
list[x][y].pos.y
для лучшего сокращения, пожалуйста, посмотрите на это
:
это правильно? поэтому это означает, что у меня будет только 2 таблицы?
Вы должны использовать отдельную таблицу с подписями, в которой есть столбец parent_id, а затем третья таблица с фактическими элементами списка низкоуровневых списков.
Запрос для этого будет выглядеть так:
SELECT li.x, li.y, sl.id
FROM li_items li
JOIN sub_lists sl on li.list_id = sl.id
JOIN lists l on sl.parent_id = l.id;
Процесс преобразования строк результатов зависит от того, используете ли вы обычный ORM или простой клиент mysql.
Вы также можете сохранить его как JSON, как предположил удаленный ответ, но вы не сможете запрашивать определенные элементы, не выбирая и не анализируя все списки. Вы также можете использовать столбец MySQL JSON, но в вашем случае наличие отдельных таблиц кажется лучше