在35个字符内取词

时间:2014-05-18 12:08:30

标签: sql-server-2008

从我的地方名称数据库中,我必须检索35个字符以内的正确单词。

例如

如果列具有值velow

 Indian School Darsait Primary Section

我的查询应该返回

Indian School Darsait Primary

2 个答案:

答案 0 :(得分:0)

 SELECT CASE WHEN LEN(@Name) < 36 THEN @Name
        ELSE LEFT(SUBSTRING(@Name,0,36),36-CHARINDEX(' ',REVERSE(SUBSTRING(@Name,0,36)))) END;

选择前36个字符将处理最后一个字的最后一个字符的位置为35的角落情况。

答案 1 :(得分:-1)

答案是:

REVERSE(RIGHT(REVERSE(SUBSTRING(NameEnglish,0, 35 )), 35 - CHARINDEX(' ',REVERSE(SUBSTRING(NameEnglish,0, 35 ))) ))