SQL Server 2012学习笔记 (四) ------ SQL Server 函数

2021-04-13 12:04:59 浏览数 (1)

  在SQL Server中提供了许多内置函数,按函数种类可以分为聚合函数、数学函数、字符串函数、日期时间函数、转换函数和元数据函数等6种。在进行查询操作时,经常能够用到SQL函数,使用SQL函数会给查询带来很多的方便.

1.1 字符串函数

   字符串函数作用于char、varchar、binary和varbinary数据类型以及可以隐式转换为char或varchar的数据类型。通常字符串函数可以用在SQL语句的表达式中。常用的字符串函数及说明如图所示。

代码语言:javascript复制
CHAR() 函数
LTRIM()函数
RTRIM()函数
匹配子串开始位置的函数:SUBSTRING()函数、LOWER()函数、UPPER()函数
1.2 数学函数

  数学函数可以对数据类型为整型(integer)、实型(real)、浮点型(float)、货币型(money)和smallmoney的列进行操作。它的返回值是6位小数,如果使用出错,则返回NULL值并显示提示信息,通常该函数可以用在SQL语句的表达式中。常用的数学函数及说明如图所示。

代码语言:javascript复制
获取随机数的函数RAND()和RAND(x)
获取整数的函数CEILING(x)和FLOOR(x)
幂运算函数POWER(x,y)、SQUARE ( x)和EXP(x)
对数运算函数LOG(x)和LOG10(x)
角度与弧度相互转换的函数RADIANS(x)和DEGREES(x)
正弦函数SIN(x)和反正弦函数ASIN(x)
余弦函数COS(x)和反余弦函数ACOS(x)
正切函数、反正切函数和余切函数
1.3 数据类型转换函数

  在同时处理不同数据类型的值时,SQL Server一般会自动进行隐式类型转换。这对于数据类型相近的数值是有效的,比如int和float,但是对于其他数据类型,例如整型和字符型数据,隐式转换就无法实现了,此时必须使用显示转换。

  当遇到类型转换的问题时,可以使用SQL Server所提供的CAST和CONVERT函数。这两种函数不但可以将指定的数据类型转换为另一种数据类型,还可用来获得各种特殊的数据格式。CAST和CONVERT函数都可用于选择列表、WHERE子句和允许使用表达式的任何地方。

在SQL Server中数据类型转换分为两种,分别如下:

隐性转换: SQL Server自动处理某些数据类型的转换。例如,如果比较char和datetime表达式、smallint和int表达式、或不同长度的char表达式,SQL Server可将它们自动转换,这种转换称为隐性转换,对这些转换不必使用CAST函数。

显示转换: 显示转换是指CAST和CONVERT函数,CAST和CONVERT函数将数值从一种数据类型(局部变量、列或其他表达式)转换到另一种数据类型。

1.4 文本和图像函数
代码语言:javascript复制
TEXTPTR函数
TEXTVALID函数
1.5 日期和时间函数

  日期和时间函数主要用来操作datetime、smalldatetime类型的数据,日期和时间函数执行算术运行与其他函数一样,也可以在SQL语句的SELECT、WHERE子句以及表达式中使用。常用的日期时间函数及说明如图所示。

代码语言:javascript复制
返回UTC日期的函数UTCDATE()
获取日期中指定部分字符串值的函数DATENAME(dp,d)
获取日期中指定部分的整数值的函数DATEPART(dp,d)
1.6 元数据函数

  元数据函数描述了数据的结构和意义,它主要用于返回数据库中的相应信息,其中包括:

代码语言:javascript复制
	返回数据库中数据表或视图的个数和名称。
	返回数据表中数据字段的名称、数据类型、长度等描述信息。
	返回数据表中定义的约束、索引、主键或外键等信息。
	返回表中指定字段的长度值
	返回表中指定字段的名称
	返回数据表达式的数据的实际长度函数
	返回数据库的编号
	返回数据库的名称
	返回当前数据库默认的NULL值
	返回服务器端计算机的标识号
	返回服务器端计算机的名称
	返回数据库对象的编号
	返回用户的SID (安全标识号)
	返回用户的登录名
	返回数据库对象的名称
	返回数据库用户的标识号
	返回数据库用户名

常用的元数据函数及说明如图所示:

0 人点赞