Мой запрос выглядит следующим образом:Sql ошибка сервера - неправильный синтаксис около если условие
declare @test varchar(500)
SELECT @test=coalesce(@test+',','') + cast(RoleName as varchar) FROM
( select roles.RoleName from LU_BCOMS_usersroles usrroles
inner join LU_BCOMS_roles roles
on roles.roleid = usrroles.Roles_roleid
where Users_Userid='MV10310'
) as Tbl
select repfamily.ProductName as Category,repfamily.Family as SeqChange,repfamily.RepFamily as DescOfChange, req.*,
TaskCompVer =
CASE WHEN req.UpdateByASPM is not null THEN 'Provide PLQM Wish List'
WHEN req.UpdateByASPM is null THEN 'Provide ASPM Wish List'
WHEN req.CreatedBy is not null THEN 'Provide ASPM Wish List'
END
from performa.TX_BCOMS_Request as req
inner join TX_BCOMS_Requestrepfamily family on
family.request_requestid=req.requestid
inner join LU_BCOMS_RepFamily as repfamily on
family.RepFamily_repFamilyid=repfamily.repfamilyid
where req.UpdatedByPLQM is null
(
if (CHARINDEX('ASPM',@test)> 0)
Begin
and req.UpdatedByASPM is null
end
else if (CHARINDEX('PLQM' ,@test)> 0)
begin
and req.UpdatedByASPM IS NOT null
END
)
Я не в состоянии построить запрос на слог неправильный синтаксис около If может любой помочь мне от этого ..
если бы я встретил это условие, если (CHARINDEX («ASPM», @ тест)> 0), мне нужно добавить в «и req.UpdatedByASPM равна нулю», иначе следующий ...
Может у добавить SQlFiddle пожалуйста. – sureshhh