SQL服务器逐个不工作

时间:2016-09-13 13:20:54

标签: sql-server

我有以下(已修改)select,使用viewcase ORDER BY caluse:

SELECT * 
FROM VW_View 
ORDER BY CASE 
WHEN Initials = 'New' 
   THEN '1' 
   ELSE TeamID 
END 
ASC

这在我的本地数据库上运行正常,并返回:

enter image description here

正如预期的那样

但是,在测试数据库上,它会返回:

enter image description here

与预期不符,例如order by子句不起作用。

视图完全相同,为什么该条款不一致?

1 个答案:

答案 0 :(得分:3)

由于您没有定义辅助排序,因此当TeamId = 1时,订单未定义。添加第二个排序条件或更改为类似......

SELECT * 
FROM VW_View 
ORDER BY CASE 
WHEN Initials = 'New' 
   THEN '0' 
   ELSE TeamID 
END 
ASC