如何在SQL Server中查找句点之前的值的长度?

时间:2015-03-11 17:34:00

标签: sql-server sql-server-2008

我有类似下面提到的数据列,我需要找到从左边开始到句点符号的每个值的长度(。)

如何在Microsoft SQL Server中完成此操作?

abcd.ee (the answer should be 4)
abc.eee (Ans is 3) 
aa.efceg (ans is 2)

2 个答案:

答案 0 :(得分:1)

试试这个:

SELECT CHARINDEX('.', YourColumn) - 1 AS YourLength
FROM YourTable;

答案 1 :(得分:1)

简单地说:

SELECT CHARINDEX('.', @str) - 1

CHARINDEX给出了.字段中VARCHAR的位置,因此减1会得到前一部分的长度。

SQL Server字符串函数中的编号从1开始。这解释了需要减1以获得正确的结果。