如何检查字符串长度,然后在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> |
|
|
|
|
|