Подтвердить что ты не робот

Добавление статического значения к результатам SQL-запроса

Мне интересно, есть ли способ выполнить это с помощью SQL-запроса.

У меня есть таблица, давайте назовем ее "LISTOFTHINGS", которая имеет два поля "ID" и "NAMEOFTHING"

Я хочу создать запрос таким образом, чтобы возвращаемые результаты были результатом этого запроса:

SELECT ID, NAMEOFTHING FROM LISTOFTHINGS ORDER BY NAMEOFTHING

и добавляет строку перед первой строкой указанного выше запроса, которая имеет "-1", "ВСЕ ВЕЩИ" в качестве значений.

Итак, если таблица имеет следующие три записи:

1, 'THING 1'
3, 'THING 3'
2, 'THING 2'

Тогда результат, который я хочу, выглядит так:

-1, 'ALL THINGS'
1, 'THING 1'
2, 'THING 2'
3, 'THING 3'

Я знаю, что могу выполнить запрос и создать список с кодом, но внутри программы VB6, где я использую это, у меня есть стороннее приложение (для которого у меня нет кода), который берет запрос для заполнения элемента управления ACTIVEX результатами. У меня нет крючков для добавления статического значения.

Я также знаю, что могу просто поместить запись в таблицу для "-1," ВСЕ ВЕЩИ ", но проблема в том, что если я это сделаю, мне нужно будет изменить много мест в программе, чтобы игнорировать это запись при осуществлении обработки.

Значение "ВСЕ ВЕЩИ" - это псевдо-запись, которая обрабатывает специальный случай для одной части программы.

4b9b3361

Ответ 1

Вы можете сделать объединение в запросе?

SELECT -1 AS ID , 'ALL THINGS' AS NAMEOFTHING FROM DUAL /*'FROM DUAL' is an Oracle thing,
                                                       not sure if you need to do 
                                                       something like that in DB2*/
UNION 
SELECT ID, NAMEOFTHING FROM LISTOFTHINGS ORDER BY NAMEOFTHING

По-видимому, так должно быть сделано для DB2

SELECT -1 AS ID , 'ALL THINGS' AS NAMEOFTHING FROM SYSIBM.SYSDUMMY1
UNION 
SELECT ID, NAMEOFTHING FROM LISTOFTHINGS ORDER BY NAMEOFTHING

Ответ 2

Попробуйте следующее:

SELECT -1 AS ID, 'ALL THINGs' AS NAMEOFTHING FROM SYSIBM.SYSDUMMY1
UNION
SELECT ID, NAMEOFTHING FROM LISTOFTHINGS