0
Я пытаюсь назначить переменную для оператора case в моей хранимой процедуре.Назначить переменную для оператора case в хранимой процедуре SQL Server
Вот мой код:
CREATE Procedure [dbo].[myProcedure]
(
@StartDate DATETIME = NULL,
@EndDate DATETIME = NULL,
)
AS
DECLARE @Type varchar
SET @Type = NULL
BEGIN
SELECT DISTINCT
@Type = CASE
WHEN myTable.myVariable = '1'
THEN 'No'
END AS 'Test'
FROM myTable
WHERE myTable.myDate BETWEEN @StartDate AND @EndDate
END
Ошибка я получаю что myTable.myVariable
нескольких частей Идентификатор не может быть связан .... я мог бы делать это совершенно неправильно, хотя ... Я просто пытаясь присвоить мое дело о переменной ...
Если не ошибаюсь, вы не можете комбинировать инициализации переменных с именем псевдонима столбца источника. Попробуйте удалить имя псевдонима 'AS 'Test'' –
Я не понимаю, что вы пытаетесь выполнить - в основном потому, что вы пытаетесь присвоить несколько строк из результатов вашего запроса скалярной переменной. Также не забудьте определить длину вашего varchar в '@ type' – Kritner