Это функция, используемая для образования существительного во множественном числе. Он не идеален, но он использовался только для преобразования имен таблиц базы данных из формы единственного числа в форму множественного числа. Если имена ваших таблиц Goose или Deer, вам не повезло.

USE [master]
GO– =============================================
– Author: <me>
– =============================================
CREATE FUNCTION [dbo].[MakePlural]
(
@Noun nvarchar(128)
)
RETURNS nvarchar(128)
AS
BEGINDECLARE @PluralVersion nvarchar(128) = “ 
DECLARE @NounVersions TABLE(Term nvarchar(128) NOT NULL)
DECLARE @QueryString nvarchar(4000) SET @QueryString = N’FORMSOF(INFLECTIONAL,”’ + @Noun + N’“)’
INSERT INTO @NounVersions
SELECT TOP 10 display_term FROM sys.dm_fts_parser(@QueryString,1033,0,0)
SELECT TOP 1 @PluralVersion = Term FROM @NounVersions WHERE Term Not Like ’%”%’ AND (RIGHT(Term,1) = ’s’ OR Term like ’%oos%’)
SET @PluralVersion = UPPER(LEFT(@PluralVersion,1))+LOWER(SUBSTRING(@PluralVersion,2,LEN(@PluralVersion)))
Return @PluralVersionEND
GO