Süh*_*düz 1 sql-server procedure count
我想编写一个程序,例如计算一列中元音的数量。所以如果我任何时候需要它,那么我不需要再次编写程序。我想用像find_vowel();
例子:
Select Column_String
From Tablo1
Where Column_ID=1
Run Code Online (Sandbox Code Playgroud)
结果:“我会找到它”
元音:“I,A,o,a,i,i”
该列有6个元音(包括上下字符)。
那么如何找到列中元音的数量呢?
我正在使用 Microsoft SQL Server 2014
谢谢
将所有元音替换为空白(以删除它们),然后从原始长度中减去无元音字符串的长度:
select
len(Column_String)
- len(
replace(replace(replace(replace(replace(
lower(Column_String), 'a', ''), 'e', ''), 'i', ''), 'o', ''), 'u', '')
) as vowel_count
from ...
Run Code Online (Sandbox Code Playgroud)
作为一个函数:
create function vowel_count(str nvarchar(1024))
returns int
as begin
return (
len(str) -
len(replace(replace(replace(replace(replace(
lower(str), 'a', ''), 'e', ''), 'i', ''), 'o', ''), 'u', ''));
end;
Run Code Online (Sandbox Code Playgroud)