Я искал ответы, но оказался более смущенным. Я не такой опытный, но с небольшим персоналом - и только я создаю отчеты - я должен это создать.Несколько выборок в хранимой процедуре с использованием объединения - Noob
Клиент запросил отчет, который вернет ответы MTD по вопросам опроса, которые хранятся в 2 базах данных. Проблема в том, что им нужны записи, прикрепленные к каждому представленному ответу, которые не являются частью опроса. то есть каждый ответчик имеет информацию о том, какой тип телефона у них есть, область, в которой они живут, модель телефона и дни обслуживания. (это не ответы)
Многие из них уникальны. (Модели и города)
Так, например, я создал хранимую процедуру в SQL, чтобы вывести ее в SSRS для отображения результатов.
Но каждый из них является избранным, и я получаю только первый результат. Я попытался добавить UNION ALL
, но, похоже, это не позволяет мне группировать их, когда я это делаю. Я получаю все в одном столбце, где мне нужны они в отдельных столбцах - идеально в горизонтальном направлении. Но это может быть слишком много.
Вот пример - возможно, есть более быстрый путь - это чудовищный проект, и мой крайний срок заканчивается - и я пробовал так много вещей - и искал. Ничего не оставалось делать, кроме как попросить о помощи.
Так вот, что у меня есть -
ALTER PROCEDURE [dbo].[TEST_WIRELESS_DISCO_SURVEY_RESULTS]
(
@STARTDATE DATETIME,
@ENDDATE DATETIME
)
AS
BEGIN
SELECT
a.CUSTOM17 as 'Make', COUNT(ISNULL(A.custom17, 0)) as 'Total Make'
FROM GCI_SURVEYS as a
JOIN GCI_Post_Survey_PreRepair_Master as b ON a.CustAcctNo = b.CustAcctNo
WHERE b.Trans_Date between @STARTDATE and @ENDDATE
AND a.i3_rowid = 'GCI_WRLSDISC_BSV'
AND a.Q01 = 'no'
GROUP BY CUSTOM17
UNION ALL
SELECT
a.CUSTOM22 as 'Market', COUNT(ISNULL(a.CUSTOM22, 0)) as 'Total Market'
FROM GCI_SURVEYS as a
JOIN GCI_Post_Survey_PreRepair_Master as b ON a.CustAcctNo = b.CustAcctNo
WHERE b.Trans_Date between @STARTDATE and @ENDDATE
AND a.i3_rowid = 'GCI_WRLSDISC_BSV'
AND a.Q01 = 'no'
GROUP BY a.CUSTOM22
может показать, какой результат получить после этого запроса –
Попробуйте использовать соединение вместо объединения. –
Не могли бы вы привести пример этого, пожалуйста? –