T-SQL-函数 (转载)
来源:互联网 发布:青岛易亚网络倒闭 编辑:程序博客网 时间:2024/06/02 07:09
五、函数
在Transact - SQL语言中,函数被用来执行一些特殊的运算以支持SQL Server的标准命令。
( 1 ).行集函数:行集函数可以在transact - SQL语句中当作表引用。
( 2 ).聚合函数:用于一组值执行计算并返回一个单一的值。
( 3 ).标量函数:用于对传递给它的一个或者多个参数值进行处理和计算,并返回一个单一的值.
(一)、标量函数的分类
1 .配置函数:返回当前的配置信息
2 .游标函数:返回有关游标的信息
3 .日期和时间函数:用于对日期和时间类型的输入值进行操作,返回一个了子符串,数字或日期和时间值
4 .数学函数:用于对作为函数参数提供的输入值执行操作,返回一个数字值
5 .元数据函数:返回有关数据库和对象和信息
6 .字符串函数:对字符串输入值执行操作,并返回一个字中或数字值
7 .系统函数:执行系统操作
8 .系统统计函数:返回系统的统计信息
9 .文本和图像函数:对于文本或图像输入值或列执行操作,返回有关这些值的信息。
具体讲解:
1 .系统函数
用于返回有关SQL Server系统,用户,数据库和数据库对象的信息。系统函数可以让用户在得到信息后,使用条件语句,根据返回的信息进行不同的操作。与其它函数一样,可以在select语句的select和where子句经及表达式中使用系统函数。
例:返回taihang数据库的yuan表中的第二列的名称。
use taihang
select col_name ( object_id ( ' yuan ' ), 2 )
注:col_name为系统函数, object_id :返回对象的id。
2 .日期和时间类型
日期和时间函数用于对日期和时间数据进行各种不同的处理和运算,并返回一个字符串,数字值或日期和时间值。
dateadd ( datepart , number ,date)
datediff ( datepart ,date1,date2)
datename ( datepart ,date)
datepart ( datepart ,date)
day (date)
getdate ()
month (date)
year (date)
例1:从getdate函数返回的日期中提取月份数
select datepart ( month , getdate ()) as ' month number '
注:datepart为系统函数
例2:从03 / 12 / 1998中返回月份、天数和年份数
select month ( ' 03/12/1998 ' ), day ( ' 03/12/1998 ' ), year ( ' 03/12/1998 ' )
3 .、字符串函数
可对二进制数据、字符串和表达式执行不同的运算,大多数字符串函数只能用于char和varchar数据类型以及明确转换成char和varchar的数据类型,少数几个字符串函数也可以用binary和varbinary数据类型。此外,果些字符串还可以处理text, ntext ,image数据类型的数据。
1 .字符串函数的分类:
( 1 ).基本字符串函数: upper , lower , space , replicate , stuff , reverse , ltrim , rtrim .
( 2 ).字符串查找函数: charindex , patindex .
( 3 ).长度和分析函数: datalength , substring , right .
( 4 ).转换函数:asch, char , str , soundex , difference
4 .数学函数
用于对数字表达式进行数学运算并返回运算结果。数学函数可以对SQL Server提供的数字数据( decimal , integer , float , real , money ,samllmoney,smallint和tinyint)进行处理。
例:在一表达式中使用ceiling(向上取整), floor (向下到整), round (四舍五入,N位小数)函数。
select ceiling ( 13.4 ), floor ( 13.4 ), round ( 13.4567 , 3 )
结果为14, 13 , 13.4570 。
5 .转换函数
一般情况下,SQL Server会自动处理某些数据类型的转换。例如,如果比较char和datetime表达式、smallint和int表达式、或不同长度的char表达式,SQL Serve可以将它们自动转换,这种自动转换称为隐性转换。但是无法由SQL Serve自动转换的或者是SQL Serve自动转换的结果不符合预期结果的,就需要使用转换函数做显示转换。转换函数有两个:convert和cast.
( 1 ). cast (expression as data_type)
( 2 ).couvert函数允许用户反表达式从一钟数据类型转换成另一钟数据类型,还允许反日期转换成不同的样式
convert (data_type [ length ] ,expression [ ,style ] )
例:
use bubs
select title,ytd_sales from titles
where cast (ytd_sales as char ( 20 )) like ' 15% '
and type = ' trad_cook '
在Transact - SQL语言中,函数被用来执行一些特殊的运算以支持SQL Server的标准命令。
( 1 ).行集函数:行集函数可以在transact - SQL语句中当作表引用。
( 2 ).聚合函数:用于一组值执行计算并返回一个单一的值。
( 3 ).标量函数:用于对传递给它的一个或者多个参数值进行处理和计算,并返回一个单一的值.
(一)、标量函数的分类
1 .配置函数:返回当前的配置信息
2 .游标函数:返回有关游标的信息
3 .日期和时间函数:用于对日期和时间类型的输入值进行操作,返回一个了子符串,数字或日期和时间值
4 .数学函数:用于对作为函数参数提供的输入值执行操作,返回一个数字值
5 .元数据函数:返回有关数据库和对象和信息
6 .字符串函数:对字符串输入值执行操作,并返回一个字中或数字值
7 .系统函数:执行系统操作
8 .系统统计函数:返回系统的统计信息
9 .文本和图像函数:对于文本或图像输入值或列执行操作,返回有关这些值的信息。
具体讲解:
1 .系统函数
用于返回有关SQL Server系统,用户,数据库和数据库对象的信息。系统函数可以让用户在得到信息后,使用条件语句,根据返回的信息进行不同的操作。与其它函数一样,可以在select语句的select和where子句经及表达式中使用系统函数。
例:返回taihang数据库的yuan表中的第二列的名称。
use taihang
select col_name ( object_id ( ' yuan ' ), 2 )
注:col_name为系统函数, object_id :返回对象的id。
2 .日期和时间类型
日期和时间函数用于对日期和时间数据进行各种不同的处理和运算,并返回一个字符串,数字值或日期和时间值。
dateadd ( datepart , number ,date)
datediff ( datepart ,date1,date2)
datename ( datepart ,date)
datepart ( datepart ,date)
day (date)
getdate ()
month (date)
year (date)
例1:从getdate函数返回的日期中提取月份数
select datepart ( month , getdate ()) as ' month number '
注:datepart为系统函数
例2:从03 / 12 / 1998中返回月份、天数和年份数
select month ( ' 03/12/1998 ' ), day ( ' 03/12/1998 ' ), year ( ' 03/12/1998 ' )
3 .、字符串函数
可对二进制数据、字符串和表达式执行不同的运算,大多数字符串函数只能用于char和varchar数据类型以及明确转换成char和varchar的数据类型,少数几个字符串函数也可以用binary和varbinary数据类型。此外,果些字符串还可以处理text, ntext ,image数据类型的数据。
1 .字符串函数的分类:
( 1 ).基本字符串函数: upper , lower , space , replicate , stuff , reverse , ltrim , rtrim .
( 2 ).字符串查找函数: charindex , patindex .
( 3 ).长度和分析函数: datalength , substring , right .
( 4 ).转换函数:asch, char , str , soundex , difference
4 .数学函数
用于对数字表达式进行数学运算并返回运算结果。数学函数可以对SQL Server提供的数字数据( decimal , integer , float , real , money ,samllmoney,smallint和tinyint)进行处理。
例:在一表达式中使用ceiling(向上取整), floor (向下到整), round (四舍五入,N位小数)函数。
select ceiling ( 13.4 ), floor ( 13.4 ), round ( 13.4567 , 3 )
结果为14, 13 , 13.4570 。
5 .转换函数
一般情况下,SQL Server会自动处理某些数据类型的转换。例如,如果比较char和datetime表达式、smallint和int表达式、或不同长度的char表达式,SQL Serve可以将它们自动转换,这种自动转换称为隐性转换。但是无法由SQL Serve自动转换的或者是SQL Serve自动转换的结果不符合预期结果的,就需要使用转换函数做显示转换。转换函数有两个:convert和cast.
( 1 ). cast (expression as data_type)
( 2 ).couvert函数允许用户反表达式从一钟数据类型转换成另一钟数据类型,还允许反日期转换成不同的样式
convert (data_type [ length ] ,expression [ ,style ] )
例:
use bubs
select title,ytd_sales from titles
where cast (ytd_sales as char ( 20 )) like ' 15% '
and type = ' trad_cook '
- T-SQL-函数 (转载)
- T-SQL-自定义函数(转载)
- T-SQL-批处理 (转载)
- T-SQL-SQL server数据类型 (转载)
- T-SQL-注释、变量 (转载)
- T-SQL-嵌套查询 (转载)
- T-SQL-流程控制语句 (转载)
- T-SQL with关键字(转载)
- T-SQL-游标 (转载)
- T-SQL-SQL server自定义数据类型 (转载)
- SQL点滴25—T-SQL面试语句(转载)
- T-SQL-运算符 (转载)
- T-SQl 日期函数(转)
- T-sql 函数
- T-Sql函数
- T-sql函数
- T-SQL编码函数
- T-SQL 函数记录
- 吴晓灵:促进债券市场发展 减少股价虚高
- T-SQL-游标 (转载)
- 合并单元格的HTML语句
- 三种手机电池不合格 潜藏爆炸危险(图)
- T-SQL-自定义函数(转载)
- T-SQL-函数 (转载)
- 纯做技术是自娱自乐 抛开技术做技术才是出路
- T-SQL-运算符 (转载)
- 正则表达式学习-初
- T-SQL-注释、变量 (转载)
- T-SQL-批处理 (转载)
- 软件工程中的五种耦合
- JAVA基础:Servlet技术及其与CGI的比较
- T-SQL-SQL server自定义数据类型 (转载)