- SET ANSI_NULLS ON
- GO
- SET QUOTED_IDENTIFIER ON
- GO
- -- =============================================
- -- Author: Insus.NET
- -- Create date: 2019-05-13
- -- Update date: 2019-05-13
- -- Description: 计算字符串由几个单词组成
- -- =============================================
- CREATE FUNCTION [dbo].[svf_WordCount]
- (
- @InputString NVARCHAR(MAX)
- )
- RETURNS INT
- AS
- BEGIN
- DECLARE @Index INT = 1
- DECLARE @CurrentChar CHAR(1)
- DECLARE @PreviousChar CHAR(1)
- DECLARE @WordCount INT = 0
-
- WHILE @Index <= LEN(@InputString)
- BEGIN
- SET @CurrentChar = SUBSTRING(@InputString, @Index, 1)
- SET @PreviousChar = SUBSTRING(@InputString, @Index - 1, 1)
-
- IF @PreviousChar = ' ' AND @CurrentChar != ' '
- SET @WordCount = @WordCount + 1
-
- SET @Index = @Index + 1
- END
- RETURN @WordCount
- END
- GO