Гость
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Хранение аналога массива / 4 сообщений из 4, страница 1 из 1
08.09.2019, 15:49
    #39858988
ball37
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение аналога массива
Доброго дня!

Я запутался в MySql.
У меня есть две таблицы - таблица городов и таблица пользователей. У каждого пользователя может быть указан один или несколько городов.
До недавнего времени я хранил в текстовом поле у пользователя json массив из id городов, потом перешел на свою текстовую шифровку массива. Но поиск пользователей по городам был долог, так как поиск по вхождению в строку занимает много времени. Пока не пришла идея, что в MySql наверняка есть более оптимальный способ хранения списков.

Я гуглил про связки один ко многим и много ко многим, но запутался окончательно. Скажите, пожалуйста, как наиболее оптимально хранить списки городов у каждого пользователя.
...
Рейтинг: 0 / 0
08.09.2019, 16:33
    #39858997
vkle
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение аналога массива
Универсальный способ - дополнительная таблица с полями айди города и айди пользователя.

В последних версиях MySQL есть штатная поддержка JSON, но не факт, что в полной мере подойдет.
...
Рейтинг: 0 / 0
09.09.2019, 18:50
    #39859520
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение аналога массива
ball37Доброго дня!

Я запутался в MySql.
У меня есть две таблицы - таблица городов и таблица пользователей. У каждого пользователя может быть указан один или несколько городов.
До недавнего времени я хранил в текстовом поле у пользователя json массив из id городов, потом перешел на свою текстовую шифровку массива. Но поиск пользователей по городам был долог, так как поиск по вхождению в строку занимает много времени. Пока не пришла идея, что в MySql наверняка есть более оптимальный способ хранения списков.

Я гуглил про связки один ко многим и много ко многим, но запутался окончательно. Скажите, пожалуйста, как наиболее оптимально хранить списки городов у каждого пользователя.

Связь многие ко многим называется, поищи в сети, почитай

Вкратце -- таблица ещё одна, (город, пользователь)
...
Рейтинг: 0 / 0
09.09.2019, 18:50
    #39859521
MasterZiv
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Хранение аналога массива
vkleУниверсальный способ - дополнительная таблица с полями айди города и айди пользователя.

В последних версиях MySQL есть штатная поддержка JSON, но не факт, что в полной мере подойдет.

в жопу JSON...
...
Рейтинг: 0 / 0
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Хранение аналога массива / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]