当前位置: 首页 > 面试题库 >

如何检查字符串长度,然后在SQL Server中选择子字符串

贾俊艾
2023-03-14
问题内容

在视图中,我有一个列 注释 ,其中可能包含大字符串。我只想选择前60个字符,并在所选字符串的末尾附加’ ‘。

为了选择前60个字符,我使用了以下查询:

select LEFT(comments, 60) as comments from myview

现在,我希望其处理如下:

  1. 检查它是否包含60个以上的字符。
  2. 如果包含,则仅选择前6个字符,并在末尾附加三个点。
  3. 如果它不包含超过60个字符,则选择整个字符串,而不在末尾附加三个点。

谢谢


问题答案:

要有条件地检查字符串的长度,请使用CASE

SELECT  CASE WHEN LEN(comments) <= 60 
             THEN comments
             ELSE LEFT(comments, 60) + '...'
        END  As Comments
FROM    myView
  • SQLFiddle演示


 类似资料:
  • 问题内容: 我有一个长度为141个字符的字符串。使用以下代码,如果字符串大于或小于140,我有一条语句返回一条消息。 我在$ message上使用了var_dump,它显示的字符串是。这是我的问题:当我将语句的编号更改为和时,尽管字符串大于131,它仍然返回第一条消息。 无论我使用的数字少于141,我总是得到“没有比赛”。回到我身边。 问题答案: 尝试使用通用语法:

  • 问题内容: 通常我希望有一种方法,但是似乎没有。 有什么合理的方法来检查? 问题答案: ECMAScript 6引入了: 但是不支持。在ECMAScript 5或更旧的环境中,使用,当找不到子字符串时,它将返回-1:

  • 通常我希望有方法,但似乎没有。 对此有什么合理的检查方法?

  • 问题内容: 有MySQL函数可以执行此操作(当然不是)吗? 问题答案: 您正在寻找获取字符串中的字符数。 对于多字节字符集,将为您提供字符串占用的字节数,同时将返回字符数。

  • 我需要从变量中选择最后两个字符,无论是数字还是字母。 例如: 我想显示变量中字符串的最后两个字母。

  • 问题内容: 我之前已经找到了这个问题的一些答案,但是对于当前的Python版本似乎已经过时了(或者至少它们对我不起作用)。 我想检查子字符串是否包含在字符串列表中。我只需要布尔结果。 我找到了这个解决方案: 我希望从这段代码中得到一个价值。如果单词是“ der”,则输出应为。 但是,结果是一个生成器函数,我找不到找到该值的方法。 任何想法? 问题答案: 您可以导入从的情况下,它是由一些其他的替代: