Tsql sql:case when(带in-param值)
你能帮忙吗Tsql sql:case when(带in-param值),tsql,sql-server-2008-r2,Tsql,Sql Server 2008 R2,你能帮忙吗 SELECT (some columns), SortOrder = CASE WHEN City = @inParamCity THEN 0 ELSE 1 END FROM dbo.addressBook ORDER BY SortOrder 我试了一下,得到了: Incorrect syntax near '=' ' – 难道不是这样吗 SELECT (some columns), CASE City WHEN @inParamCity THEN 0 ELSE
SELECT
(some columns),
SortOrder = CASE WHEN City = @inParamCity THEN 0 ELSE 1 END
FROM
dbo.addressBook
ORDER BY
SortOrder
我试了一下,得到了:
Incorrect syntax near '=' ' –
难道不是这样吗
SELECT (some columns),
CASE City WHEN @inParamCity THEN 0 ELSE 1 END As SortOrder
FROM dbo.addressBook
ORDER BY SortOrder
您使用的是哪个版本的SQL Server???这在我的SQL Server 2008 R2版本上完美无瑕……2008 R2。你所说的很奇怪,因为有些人说他们看到了语法错误(见@Adam Wenger)@EladBenda我不正确,这在我刚刚测试的代码上也可以正常工作(SQL Server 2008R2),但它与最初的帖子完全相同。没有功能性差异
SELECT (some columns),
CASE City WHEN @inParamCity THEN 0 ELSE 1 END As SortOrder
FROM dbo.addressBook
ORDER BY SortOrder