я знаю, что это не ответ, но я не смог разместить таблицу в комментариях, поэтому я помещаю ее сюда.
я чувствую, что для хранения ваших медиафайлов необходимы дополнительные таблицы и префы, чтобы значительно упростить работу вашей базы данных.
media_table
id, user_id, media_type
prefs_table
id, user_id, pref_type
Затем поля в вашей художественной таблице, которые соответствуют типу носителя и типу префа.
art_table
media_type, art_type
Таким образом, вы можете легко использовать простой JOIN для поиска коррелирующих записей вместо сотен сравнений.
SELECT art.id FROM art JOIN prefs_table ON art.pref_type = prefs_table.pref_type JOIN users ON prefs_table.user_id = users.id WHERE users.id = whatever
Это упрощенный пример, который раскрыл бы все виды искусства, которые соответствуют любому из предпочтений пользователя. Конечно, вы можете легко включить типы мультимедиа в один и тот же запрос.