MSSQL2008中函数的完善利用
Microsoft SQL Server 2008中的函数是管理数据库中非常重要的工具,特别是当处理复杂的查询任务时。函数减少了开发时间,减轻了客户端和服务器之间数据传输的负担,改良了系统性能。
函数有很多种,最经常使用的功能是简化t-sql语句。比如,类似函数string_split(),它可以通过扩大T-SQL提供分隔符来拆分字符串。例如:
CREATE FUNCTION [dbo].[StringSplit]
(@String varchar(8000), @Delimiter char(1)
)RETURNS @OutputTable TABLE
(
Item varchar(8000)
)
AS
BEGIN
DECLARE @Item varchar(8000)
DECLARE @Index int
DECLARE @StingLength int
DECLARE @DelimiterLength int
SET @Index = 1
SET @StingLength = LEN(@String)
SET @DelimiterLength = Len(@Delimiter)
IF @DelimiterLength
RETURN
WHILE @Index
BEGIN
IF SUBSTRING(@String, @Index, @DelimiterLength) = @Delimiter
BEGIN
SET @Item = SUBSTRING(@String, 1, @Index – 1)
INSERT INTO @OutputTable(Item) VALUES(@Item)
SET @String = SUBSTRING(@String, @Index + @DelimiterLength, @StingLength – @Index)
SET @Index = 1
SET @StingLength = LEN(@String)
END
ELSE
SET @Index = @Index + 1
END
IF @StingLength >= 1
INSERT INTO @OutputTable(Item) VALUES (@String)
RETURN
END
也能够使用新函数 datepart() 来在SQL Serveer 2008中查找特定的日期部份,并返回一个整数值:
SELECT DATEPART(MONTH,GETDATE())
以上函数将返回一个值,表示当前月份,一般情况下,该函数会返回一个以数字表示的字符串。
它还支持枚举类型,可以用来指定源字符串中要检索的字符或字符串:
SELECT CHARINDEX (‘C’, ‘MSsqlserver’)
该函数将返回1,如果查找到,索引表示在查找字符串中所找到的字符第一次出现的位置。
一样,SQL server 2008也支持乘函数SQRT() 。SQRT函数会返回给定参数的平方根:
SELECT SQRT (4)
该函数将返回以数字表示的“2”。
通过以上示例我们可以看出,MSSQL提供了各种区别的功能,而且处理复杂的查询任务要比仅仅使用T-SQL要容易很多。SQL Server 2008中函数的利用非常完善,提高了系统的效力,减少了开发与保护的时间,为开发者和用户带来了更多便利。
本文来源:https://www.yuntue.com/post/89924.html | 云服务器网,转载请注明出处!

微信扫一扫打赏
支付宝扫一扫打赏