На данный вопрос уже ответили:
Здравствуйте.
Есть таблица MYSQL в базе с колонками
server_id | game_mod | version_ms
------------+-----------------+-------------
1 | 5,7,8,9,10,15 | 1.9
2 | 7,55,99,20,1 | 2.2
3 | 1,2,3,4,5,8,9 | 3.0
Данные в колонке game_mod хранятся через запятую
Мне надо вывести из таблицы сервера к примеру только с двумя модами, но у сервера много модов. Просто LIKE % % не подходит.
Суть в том что у каждого сервера есть куда модов и названия модов хранятся в другой таблице, сюда просто id прописываются этих модов. Вот я не знаю как сделать поиск по выбраным модам.
Помогите пожалуйста, может даже другой реализацией. Колонку для каждого мода добавлять безумство, так как модов больше 100
В общем нужно составить запрос, чтобы вывести все сервера с модами 1 и 9
Спасибо большое тем кто поможет!
Почему LIKE '%...%'
не подходит? Рассмотрим для каждой цифры 3 случая - цифра в начале, в середине и в конце.
select server_id, game_mod
from servers
where (game_mod like '1,%' or game_mod like '%,1,%' or game_mod like '%,1')
and (game_mod like '9,%' or game_mod like '%,9,%' or game_mod like '%,9')
У вас нехорошая архитектура базы. Даже если сейчас вы решите ваш вопрос с помощью LIKE, то потом вы всё равно будете огребать всё новые и новые проблемы.
Правильно делать три таблицы:
В первой у вас будут сервера и колонок только две - server_id и version_ms.
Во второй - моды, с колонками mod_id и название мода.
А вот третья таблица (связующая) и делает всю магию. В ней две колонки - server_id и mod_id. В этой таблице для каждого сервера будет столько строк, сколько на этом сервере модов.
Более подробно вы можете нагуглить по запросам "нормализация баз данных" и "отношение многие-ко-многим".
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
В wp-configphp указан DB_HOST как localhost
Приветствую! Необходимо добавить в БД примерно такого вида текст: Водка "Свояк"Получаю только первую часть