Top.Mail.Ru
Ответы
Аватар пользователя
13лет
Изменено

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

Например:
SELECT student FROM Students
Результат:
Вася
Петя
Ваня
...
а хочется, чтобы еще было стоковое значение во второй колонке, к примеру:
Вася "из таблицы студенты"
Петя "из таблицы студенты"
Ваня "из таблицы студенты"
..."из таблицы студенты"
Понятно, что в данном случае это лишнее, но применить хочется. когда будет несколько UNION'ов и неплохо было бы их детерминировать дополнительным полем... К слову, можно без проблем добавить колонку числовым значением, например, 1 - для первой таблицы, 2 - для второй. Можно ли подобное сделать со строковым значением?

По дате
По рейтингу
Аватар пользователя
Гуру
13лет

может

SELECT student, ' из таблицы студенты' FROM Students
или
SELECT student, ' из таблицы студенты' as table_comment_field FROM Students
или
SELECT student || ' из таблицы студенты' FROM Students

в той реализации сработает
(не помню что в стандарте - давно не доводилось эскуэлить - но помню что в оракле подобное срабатывало)

Аватар пользователя
Профи
13лет

если MySQL, то думаю правильнее будет с использованием конкатенации (CONCAT()):
SELECT CONCAT(student, ' из таблицы студенты') FROM Students
а в примере выше (от лиля калиде) получается два поля в результате, а не одно
однако, ее пример будет работать в любых СУБД

Аватар пользователя
Гуру
13лет

подправила и дополнила варианты и на одно поле

хотя в вопросе было "еще было стоковое значение во второй колонке" - т.е. именно разбивка на два поля

Аватар пользователя
Ученик
13лет

Вы с помощью Пи-эйч-пи это делаете?
Если так, разве сложно просто, после переменной-массива поставить точку и в ковычках "из таблицы студенты" ?

Аватар пользователя
Ученик
13лет

Нет, не в PHP.. на самом деле тренирую исключительно запросы SQL на sql-ex.. и стало интересно, есть ли возможность это сделать или нет



Видео по теме