回答

收藏

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

技术问答 技术问答 231 人阅读 | 0 人回复 | 2023-09-14

在视图中,我有一个列 注释 ,其中可能包含大字符串。我只想选择前60个字符,并在所选字符串的末尾附加’ ‘。
  D) |9 e2 d: D$ I为了选择前60个字符,我使用了以下查询:7 m0 I; `" F- F* C
select LEFT(comments, 60) as comments from myview$ H* @0 }: h7 M4 v& `
现在,我希望其处理如下:$ u7 ^; d' _  Q- W0 u# N  S
[ol]检查它是否包含60个以上的字符。8 t. m( z& H5 _" S+ i7 K/ K
如果包含,则仅选择前6个字符,并在末尾附加三个点。
' u2 \; \5 F9 L& \如果它不包含超过60个字符,则选择整个字符串,而不在末尾附加三个点。8 T0 |2 `/ e+ j; J  Z
[/ol]
! g+ i1 a2 ]" h! O  H* E8 E! j& L* g谢谢  \/ u' x2 S, S- i2 R7 a
               
  o$ Q: T, J5 e5 m% I) ?6 Q解决方案:4 @: ~! C: E9 H$ F3 J+ t
                # g$ }% J8 ]) ~  r4 j6 s
+ H/ n, a. r) Y

# d; E6 b3 K& Z" }                要有条件地检查字符串的长度,请使用CASE。# j. s+ p3 W# v% z, |) z; }7 m8 s
SELECT  CASE WHEN LEN(comments)
+ N& a' W. Y' V: x  x( i/ }</u>
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则