首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

又一次遇见这个情况,该如何解决

2012-01-05 
又一次遇见这个情况Orderby(Casewhen**then1else0end)+(Casewhen**then1else0end)+(Casewhen**then1else0e

又一次遇见这个情况
Order   by   (Case   when   **   then   1   else   0   end)+
                  (Case   when   **     then   1   else   0   end)+
                  (Case   when   **   then   1   else   0   end)+
                  (Case   when   **     then   1   else   0   end)   Desc
这个语句后面的加号啥意思啊,我知道order   by   n是针对第几列的排序,
但这个写法一直不是很明白
有时还会遇到
sum(case   when   **   then   1   else   0   end)的情况
请帮忙解释一下谢谢!




[解决办法]
樓主的加号即進行加法運算

A+B:若A、B是字符串,那就是將AB連接起來

order by n
是按N列進行排序

sum(case when ** then 1 else 0 end)是對所有的1或0求和
[解决办法]
最后结果应该是 order by 1或者order by 0,order by 2,order by 3,order by 4

热点排行