我想显示8个字符后,如何通过substring
做到这一点。
联系人姓名为amjad habib
,我要显示amjad hab...
.
SELECT SUBSTRING(contractname, 1, 8)
from contracts
where contractid = 613
最佳答案
这会将字符串剪切到您可以指定的最大长度。仅当字符串太长而被截断时才会添加点。较短的字符串“按原样”显示:
DECLARE @tbl TABLE(TheName VARCHAR(100));
INSERT INTO @tbl VALUES('short'),('exactly8'),('something longer');
DECLARE @MaxLength INT=8;
SELECT TheName
,LEFT(TheName,@MaxLength) + CASE WHEN LEN(TheName)>@MaxLength THEN '...' ELSE '' END AS CutToMaxLength
FROM @tbl
结果
TheName CutToMaxLength
short short
exactly8 exactly8
something longer somethin...
关于sql - 子字符串sql server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35843404/