У меня есть таблица с именем и типом поля. Поле типа содержит музыкальный вкус человека, таким образом:Как я могу отфильтровать эти данные из моей базы данных?
«Рок; Поп Металл; Танец» (VARCHAR)
Мне нужно создать список первенствовать с этим лицами, сгруппированных по музыкальному вкусу.
Например:
- один список со всеми, в Rock; Металл; Танец
- Другой со всеми в Рок; Металл; Транс
- Другой с Рок (Rock) Только
- и так далее ...
Каждый пользователь может быть только в одном списке. Мне нужен этот список для импорта в моем программном обеспечении для рассылки новостей. Каждый тип - это список рассылки.
Мне нужно выполнить всевозможные комбинации, а затем создать список, когда получите результаты. Мне было интересно, какой из них лучший и быстрый способ сделать это. Может быть вызван PHP-скриптом или даже просто SQL.
Ps .: Мне нужны эти данные из старой базы данных, созданной кем-то еще. Я согласен, это ужасный способ хранить.
Хотя это не ответ на ваш вопрос, вы должны рассмотреть возможность нормализации базы данных. –
Возможно ли, чтобы струна была «Metal, Rock, Dance»? Разве это отличается от «Rock, Metal, Dance»? Всегда ли это точный формат или пробелы, иногда отсутствующие, иногда запятые вместо полуколоней и т. Д.? –
Мне нужны эти данные из старой базы данных, созданной кем-то еще. Я согласен, это ужасный способ хранить. Порядок, похоже, всегда одинаковый. В этом случае, подумав об этом, кажется, что GROUP BY создаст все списки.Если нет, я могу использовать ORDER BY, а затем разделить, как сказал Скотт. –