添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

我想知道问题出在哪里。我可以像这样简化if条件吗?

IF  LEFT(@text, 1) = '#'  RETURN RIGHT(@text,LEN(@text)-1)
ELSE RETURN @text

编辑:现在我在函数中设置了if

CREATE FUNCTION Trimming (@text VARCHAR(255))
RETURNS VARCHAR(255)
BEGIN
    DECLARE @TrimText AS VARCHAR(255) ;
    SET @TrimText=LTRIM(RTRIM(@text)
    IF  LEFT(@TrimText, 1) = '#'
        BEGIN
            RETURN RIGHT(@TrimText,LEN(@TrimText)-1)
        BEGIN
            RETURN @TrimText

而控制台显示

关键字'IF'附近的语法不正确。

2 个评论
这个代码没有任何问题。i.stack.imgur.com/TwBAh.png
谢谢你的图像,一个END是额外的:-)
sql
sql-server
sql-server-2008
tsql
Muflix
Muflix
发布于 2013-07-09
2 个回答
Darren
Darren
发布于 2013-07-09
已采纳
0 人赞同

你有一个额外的END 语句,你的查询应该看起来像。

IF  LEFT(@text, 1) = '#'
BEGIN
     /* trim first character if is '#' */
      RETURN RIGHT(@text,LEN(@text)-1)
BEGIN
      RETURN @text

http://sqlfiddle.com/#!6/270ca/4

从你的编辑来看

SET @TrimText=LTRIM(RTRIM(@text)

你缺少一个)