Задать вопрос
@uuuu

Как использовать переменную в названии столбца?

SELECT `row_name` FROM `table` выводит `row_name` и все строки
А что делать, если `row_name` иногда меняется на другой столбец?
Как использовать переменную в названии столбца?
SELECT @VAR FROM `table`
  • Вопрос задан
  • 804 просмотра
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 2
mayton2019
@mayton2019
Bigdata Engineer
SQL изначально создавался как язык для бизнеса. Тоесть не для программистов, а для людей которые заняты обычной деловой денежной активностью.

Но если ты - счастливый обладатель PHP или Node языка то ты можешь динамически создавать любые тексты SQL и подставлять туда имя столбца из любых переменных языка. Благо string interpolation есть почти во всех языках. Например в PHP:

$sql = "SELECT ${VAR} FROM `table`"

Мне кажется этого достаточно для решения задачи.

И не стоит на SQL навешивать сложные смыслы.
Ответ написан
@Draconian
Oracle Developer
Тут есть много опций, если когда такое происходит, значение row_name - Null, то можно использовать
coalesce (row_name, other_column). Если значения всегда непустые, то проще написать функцию, которая будет подставлять необходимое название колонки.
Ответ написан
Ваш ответ на вопрос

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

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