I want to pass the parameter of stored procedure where
clause from C#. I have declared a parameter @WhereClause nvarchar(max)
and in query I have given like this
select distinct
CLFIIK.AdID
,CLFIIK.AdGiverName
,CLFIIK.AdGiverEmail
,CLFIIK.Title
,left(CLFIIK.Descripton,200) +'...' as Descripton -- select 200 Caharacter and after 200 char it will add ...
, case
when CLFIIK.type = 1 then -- Wanted Events
'Wanted Event'
when CLFIIK.type = 1 then -- offering Events
'Offering Event'
else -- Neither Wanted no Offering Events
'No Event Yet'
end as Type
,CASE
WHEN DATEDIFF(HOUR, PublishedDate, GETDATE()) < 24 THEN
CASE DATEDIFF(HOUR, PublishedDate, GETDATE())
WHEN 1 THEN
CONVERT(VARCHAR, DATEDIFF(HOUR, PublishedDate, GETDATE())) + ' hour ago'
ELSE
CONVERT(VARCHAR, DATEDIFF(HOUR, PublishedDate, GETDATE())) + ' hours ago'
END
ELSE
REPLACE(CONVERT(VARCHAR, PublishedDate, 6), ' ', '-')
END as PublishedDate
,CLFIIK.LastModifiedDate
,LM.LocalityName +', '+ CityM.CityName as Address
,CM.CategoryName
,CM.CategoryID
from
CLF.utblCLFAdInstanceInfoKeys as CLFIIK
inner join
dbo.utblCategoryMaster as CM on CM.CategoryID = CLFIIK.CategoryID
inner join
dbo.utblLocalityMaster as LM on LM.LocalityID = CLFIIK.LocalityID
inner join
dbo.utblCityMaster as CityM on CityM.CityID = LM.CityID
left join
CLF.utblCLFAdInstanceDtls as AdInsDeets on AdInsDeets.AdID = CLFIIK.AdID
where
@WhereClause;
SQL Server 2008 R2 throws this error
Msg 4145, Level 15, State 1, Procedure udspGetCLFSearchResultEventList, Line 55
An expression of non-boolean type specified in a context where a condition is expected, near ';'.
How can I fix this error?