0

以下是sybase代码。有人可以看看以下是否正确。我想我错过了某处的语法

    declare @test  varchar(32)
    select @test="/data/dump/team/"

    update link
    set link.value=
     case when @test=substring(link.value,1,17)
                   then @test
          when  @test != substring(link.value,1,17)
                      value
    end 
    where link.value != ""
    and link_id=0 and row_id = 462135

因为它给了我以下错误:“第 10 行关键字结尾附近的语法不正确。”

可以请人帮我语法。

4

2 回答 2

6

尝试在第二种情况下添加“then”:

declare @test  varchar(32)
    select @test="/data/dump/team/"

    update link
    set link.value=
     case when @test=substring(link.value,1,17)
                   then @test
          when  @test != substring(link.value,1,17)
                   then value
    end 
于 2013-01-01T07:27:08.413 回答
-1

为什么不简单地为第二个“when”做一个“else”?

于 2013-03-01T15:49:32.780 回答