SQL SERVER 不能用DECODE函数吗

沉默又寡言 2011-11-13 05:31:03
我这么写

select SNAME,Decode(FENSHU,90,'优秀',80,'良好',60,'及格','不及格') from S_STUDENT


错误提示:
'DECODE' 不是可以识别的 内置函数名称。

还有就是可不可以达到这样的效果

select SNAME,Decode(FENSHU,FENSHU>=90,'优秀',FENSHU>=80,'良好',FENSHU>=60,'及格','不及格') from S_STUDENT


谢谢
...全文
1616 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
LYMPC 2011-11-14
  • 打赏
  • 举报
回复
可以自定义函数
中国风 2011-11-14
  • 打赏
  • 举报
回复


select SNAME,Decode(FENSHU,90,'优秀',80,'良好',60,'及格','不及格') from S_STUDENT

--改为
select SNAME,Decode=case FENSHU when 90 then '优秀' when 80 then '良好' when 60 then '及格' else '不及格' end
from S_STUDENT
中国风 2011-11-14
  • 打赏
  • 举报
回复

select SNAME,Decode(FENSHU,FENSHU>=90,'优秀',FENSHU>=80,'良好',FENSHU>=60,'及格','不及格') from S_STUDENT

--改为
select SNAME,FENSHU=case when FENSHU>=90 then '优秀' when FENSHU>=80 then '良好'when FENSHU>=60 then '及格' else '不及格' end

from S_STUDENT
  • 打赏
  • 举报
回复
case when
--小F-- 2011-11-13
  • 打赏
  • 举报
回复
CASE WHEN FENSHU>=90 THEN '优秀' WHEN FENSHU>=80 AND FENSHU<=90 THEN '良好' ....END 
--小F-- 2011-11-13
  • 打赏
  • 举报
回复
CASE....WHEN...
沉默又寡言 2011-11-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 fredrickhu 的回复:]

SQL SERVER没有DECODE这样的函数
[/Quote]
请问SQL里有什么函数可以达到这样的效果吗?谢谢小F
--小F-- 2011-11-13
  • 打赏
  • 举报
回复
SQL SERVER没有DECODE这样的函数

34,874

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧