Member 12770648 Ответов: 1

Поиск значений для 4 ответов


MS SQL SERVER 2008

DECLARE @Request AS TABLE (RESPONSE VARCHAR (30), ATTRIBS DECIMAL(18,2))
Вставить в @Request значения('HAPPY' ,100)
Вставить в @Request значения('удовлетворено' , 75)
Вставить в @Request значения('NEUTRAL' , 50)
Вставить в @Request значения('несчастный' , 25)
Вставить в @Request значения('NO-RESPONSE', NULL)


СТОЛ ОТВЕТ
----------------------
BRN_NAME
RESPONSE1
ОТКЛИК2
RESPONSE3
RESPONSE4





Выберите A. BRN_NAME ,
А. RESPONSE1,
А. ОТКЛИК2,
А. RESPONSE3,
А. RESPONSE4

ИЗ ОТВЕТА А
Левое соединение @просьбе З. А. RESPONSE1 =С. реакция

У меня есть список ответы

А. RESPONSE1,
А. ОТКЛИК2,
А. RESPONSE3,
А. RESPONSE4

что мне нужно, чтобы получить их ценности путем ссылки на таблицу поиска @Запрос


Как мне завершить инструкцию Select, чтобы получить значения, эквивалентные
А. RESPONSE1,
А. ОТКЛИК2,
А. RESPONSE3,
А. RESPONSE4

Что я уже пробовал:

Это сегмент программы, в стадии строительства

1 Ответов

Рейтинг:
9

OriginalGriff

Когда я предложил вам создать таблицу вчера: Вычисление средних значений на основе подсчетов[^] Я не предлагал табличную переменную: сделайте ее "постоянной" таблицей, как и ваша существующая таблица.

Затем - как я и предлагал - используйте соединение:

SELECT a.Brn_name, b.Attribs, c.Attribs, d.Attribs, e.Attribs 
FROM Response a
JOIN Requests b ON a.RESPONSE1 = b.Response
JOIN Requests c ON a.RESPONSE2 = c.Response
JOIN Requests d ON a.RESPONSE3 = d.Response
JOIN Requests e ON a.RESPONSE4 = e.Response