有关在SQL中使用函数

一直以来使用SQL都是使用select ,update ,insert ,delete其中操作的对象都是表或者表的某列。
其实SQL是博大精深的,其可以完成的数据操作远远比我们想象的要多(至少我认为是),很多都是通过应用程序在客户端中将数据库中的数据抓出来,然后再在客户程序中进行处理,其实很多都可以在数据库中就能完成。
这里简单讲一下我在学习在sql中调用函数的笔记和心得。
首先SQL中数据库的函数有以下分类:
1、聚合函数
2、配置函数
3、游标函数
4、元数据函数
5、数学函数
6、文本函数
7、行集函数
8、系统函数
9、日期和时间函数
10、系统统计函数
11、文本和图像统计函数
在SQL中函数的使用是怎么一回事呢?
其实其调用和自己在写客户程序中是一样的,直接输入调用函数名后加其参数,
比如 SUSER_SNAME(),返回当前登陆的用户名,那么函数可以出现在哪些地方呢?
1、使用SELECT语句的查询的选择列表中,以返回一个值
select suser_sname()

这将会显示当前登录的名字
2、SELECT或数据修改语句的WHERE子句搜索条件中,以限制合乎查询条件的行。
1SELECT *
2FROM [Order Details]
3WHERE Quantity =
4    (SELECT MAX(Quantity) FROM [Order Details])
5

3、视图的搜索条件中,以使视图在运行时与用户或环境动态的保持一致。
如:
1CREATE VIEW ShowMyEmploymentInfo AS
2SELECT * FROM Employees
3WHERE EmployeeID = SUSER_SID()
4GO
5
4、任一表达式中
5、check约束或触发器中,以在插入数据时检查指定的值
1CREATE TABLE SalesContacts
2    (SalesRepID    INT PRIMARY KEY CHECK (SalesRepID = SUSER_SID() ),
3    ContactName    VARCHAR(50NULL,
4    ContactPhone    VARCHAR(13NULL)
5
6、DEFAULT约束或触发器中,以便在insert 语句未指定值得情况下提供一个值
 1CREATE TABLE SalesContacts
 2    (
 3    SalesRepID    INT PRIMARY KEY CHECK (SalesRepID = SUSER_SID() ),
 4    ContactName    VARCHAR(50NULL,
 5    ContactPhone    VARCHAR(13NULL,
 6    WhenCreated    DATETIME DEFAULT GETDATE(),
 7    Creator        INT DEFAULT SUSER_SID()
 8    )
 9GO
10
posted @ 2007-01-11 21:11  枫崖  阅读(1965)  评论(0编辑  收藏  举报