oracle PLSQL /sqlserver2005基本操作对比

CASE 的语法。在一般的 SELECT 中,其语法如下:
SELECT <myColumn> =
CASE
WHEN <A> THEN <somethingA>
WHEN <B> THEN <somethingB>
ELSE <somethingE>
END //************************************************************************

sql server2005中测试如下

SELECT [createdate],
monthnumber=case month(createdate) 
    when 12  then '十二'
    when 11  then '十一'
    when 10  then '十'
    when 9  then '九'
    when 8  then '八'
    when 7  then '七'
    when 6  then '六'
    when 5  then '五'
    when 4  then '四'
    when 3  then '三'
    when 2  then '二'
    when 1  then '一'
    else '未知'
    end +'月' 
FROM [dbo].[zhq_content]

另外一种
SELECT [createdate],
monthnumber=case 
    when month(createdate)=12  then '十二'
/*    when 11  then '十一'
    when 10  then '十'
    when 9  then '九'
    when 8  then '八'
    when 7  then '七'
    when 6  then '六'
    when 5  then '五'
    when 4  then '四'
    when 3  then '三'
    when 2  then '二'
    when 1  then '一'*/
    else '未知'
    end +'月' 
FROM [dbo].[zhq_content]

//sql  server 2005中if   else用法

declare  @a  int;
declare  @b  nvarchar(50);
set @a=10;
if @a=8
 set @b='b8'
else if @a=9   -- not  elseif
 set @b='b9'
else
 set @b='b10'
print @b;

//sql server2005中字符长度

declare  @a  nvarchar(50);
declare  @b  nvarchar(50);
set @a='100.00中';
set @b=datalength(@a)--len(@a) 12

print @b;  --14

//字符截取

declare  @a  nvarchar(50);
declare  @b  nvarchar(50);
set @a='100.00';
set @b=substring(@a,1,3)--substring  和C#中的有区别(从0开始) 这里是从1开始
print @b;
--isnull(,)

//oracle*************************************************************


 

substr(,,)注意不是substring(,,) 如下图可知

 

nvl(,)--与sql  server中isnull差不多。。。。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值