SQL Server进阶(十五)常用函数
Posted cnki
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了SQL Server进阶(十五)常用函数相关的知识,希望对你有一定的参考价值。
在SQL 2012基础教程中列出子句是按照以下顺序进行逻辑处理。
FROM WHERE GROUP BY HAVING SELECT ORDER BY
IF EXISTS (SELECT 1 FROM TableName WHERE UserCode = @UserCode) BEGIN UPDATE TableName SET NotPushBeginTime = @NotPushBeginTime, NotPushEndTime = @NotPushEndTime WHERE UserCode = @UserCode END ELSE BEGIN INSERT INTO TableName (UserCode, NotPushBeginTime, NotPushEndTime, CreateTime) VALUES (@UserCode, @NotPushBeginTime, @NotPushEndTime, Getdate()) END
sql中的表值函数与标量值函数区别与用法
通俗来讲:
听名字就知道区别了
表值函数返回的是一张表结果,就和一个select查询语句一样,只不过里面带入了参数或者很复杂;
标量值函数返回的只是一个值
一 、表值函数又分为内联函数与多语句函数
(1)内联函数就是没有函数主体表是单个 SELECT。
下面是一个不带输入参数的表值函数 create function tvpoints() returns table as return ( select * from tb_users );
(2)下面是带参的内联表值函数
对于多语句表值函数,在 BEGIN...END 语句块中定义的函数体包含一系列 Transact-SQL 语句,这些语句可生成行并将其插入将返回的表中。 以下示例创建了一个表值函数. create function tvpoints() returns @points table (x float, y float) as begin insert @points values(1,2); insert @points values(3,4); return; end
(3)标量函数(返回一个具体类型的值而不是一张表了)
CREATE FUNCTION FUN_DataFormat (@strDate datetime) RETURNS varchar(20) AS BEGIN declare @date varchar(20) set @date = DATENAME(YY,@strDate)+‘年‘+Convert(VARCHAR,MONTH(@strDate))+‘月‘+Convert(VARCHAR,DAY(@strDate))+‘日‘ return @date END
可以通过select dbo.FUN_DataFormat(getdate())来使用。(用的时候一定要在函数前面添加一个dbo或者的话数据库语句报错的会提示不认识的)
SELECT * FROM dbo.Acceptance FOR XML PATH
SQL Server 中WITH (NOLOCK)浅析
https://www.cnblogs.com/kerrycode/p/3946268.html
以上是关于SQL Server进阶(十五)常用函数的主要内容,如果未能解决你的问题,请参考以下文章
我的Android进阶之旅NDK开发之在C++代码中使用Android Log打印日志,打印出C++的函数耗时以及代码片段耗时详情