快速业务通道

T-SQL 查询中使用的函数之系统函数

作者 佚名技术 来源 数据库编程 浏览 发布时间 2012-02-16
 在查询语句中,不仅可查询表中列的值而且可以使用内部函数查询数据库中不同类型的信息。可以在SELECT列表,WHERE子句和任何允许表达式的地方使用内部函数。这些函数都是T-SQL对SQL的扩展。Adaptive Server提供的内部函数可以分成以下几类:
l         系统函数。返回数据库中的信息;
l         字符串函数。用于处理字符串或字符串表达式;
l         text函数。用于处理text和image类型的数据;
l         数学类型。用于处理三角、几何以及其它数据处理的函数;
l         日期函数。处理datetime和smalldatetime类型的数据;
l         数据类型转换函数(convert)。用于将一种数据类型转换成另一种数据类型,也可将日期格式化成各种形式。
l         安全函数。返回安全服务和用户自定义角色的信息
一、系统函数
系统函数从数据库返回特定的信息,它们中的大多数提供了查询系统表的简便方式。
系统函数的一般语法:
select function_name ( argument[s] )
系统函数可以用在选择项里、where子句里以及任何允许表达式存在的地方。例如:如果要查询“zyf”的用户标示号,则输入:
select  “用户标示号” =user_id ( “zyf” )
 
 
结果:
用户标示号
——
3
一般来说,函数名表示里将返回什么样的信息。
User_name用ID号作参数而返回用户的名字。如下,如果查询ID号为3的用户名
Select “用户名” = user_name(3)
结果:
用户名
——
zyf
找出当前用户的名字(也就是正在使用的用户名)
select user_name()
结果:
用户名
——
dbo
Adaptive Server按照如下的规则处理用户标示符:
l         当系统管理员成为他使用的数据库的所有者时,其登陆用户ID被指定为1;
l         guest用户的登陆用户ID总是-1
l         数据库所有者的用户总是dbo,他的用户ID是1;
l         guest用户的ID是2
 
系统函数表
函数名
 参数
 返回结果
 
Col_name
 (object_id,column_id[,database_id])
 列名
 
Col_length
 (object_name,column_name)
 列的定义长度(使用datalength是查看实际数据的长度)
 
curunreservedpgs
 (dbid,lstart,unreservedpgs)
 磁盘片中的空闲页数。如果数据库是打开的,则该值来自于内存;如果数据库没有打开则该值来自于系统表sysusages中列unreservedpgs
 
Data_pgs
 (object_id,{doampg | ioampg})
 被表(doampg)或索引(ioampg)使用的页数。该结果不包括内部结果使用的页数
 
Datalength
 (expression)
 返回expression的长度。Expression可以是列名也可以是字符串常量。如果是列名则返回列中实际数据的长度。
 
Db_id
 ([database_name])
 数据库的ID号。数据库名必须为字符表达式,如果数据库名为字符常量,则必须用引号将其引起来。如果没有给出数据库名,则返回当前数据库的ID号
 
Db_name
 ([database_id])
 数据库名。Databas

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号