Как задать имя колонки таблицы как значение колонки другой таблицы?

Помогите, пожалуйста, найти решение такой ситуации:
Вот есть таблица A (id, one, two) и таблица B (id, name).
Как можно изменить значение колонки в таблице A (one или two), если имя одной из этих колонок задано в таблице B в колонке name?
UPDATE A, B SET A.( ? B.name ?) = 1 WHERE A.id = B.id
  • Вопрос задан
  • 291 просмотр
Решения вопроса 1
@MrTimon
Ну якщо у вас тільки 2 поля (чи не набагато більше), то ви можете використати IF чи CASE функції тобто якось так

UPDATE A JOIN B ON A.id=B.id SET A.one = IF(B.name = 'one',1,0), A.two= IF(B.name = 'two',1,0)


Якщо ж їх більше або ж ви не знаєте самих назв полів, то тут потрібно придумати щось інше )

Надіюсь вам це допоможе
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы