@van_gal

Как создать SQL запрос с условием на несколько однотипных полей бд?

Имеется база данных с полями: apropid1, apropid2, apropid3, apropid4, apropid5...

Как написать запрос с обращением к каждому этому полю с проверкой его содержимого и возвратить номер поля где прошла эта проверка ?
  • Вопрос задан
  • 152 просмотра
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Извратиться, конечно, можно
SELECT * FROM (
    SELECT `id`, 1 AS `fieldNum`, `apropid1` AS `apropid` FROM `table`
        UNION SELECT `id`, 2 AS `fieldNum`, `apropid2` AS `apropid` FROM `table`
        UNION SELECT `id`, 3 AS `fieldNum`, `apropid3` AS `apropid` FROM `table`
    ...
    ) AS `t`
    WHERE `t`.`apropid` == 'something'

Но лучше нормализовать таблицу, создав связанную таблицу свойств с их номерами.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы