--字符串函数
--1、LEN:返回一个字符串的字符数
select LEN('中国'),LEN('abc123!')
select LEN('abc '+'1'),LEN(' abc')
--2、DataLength:返回一个字符串的字节数
select DATALENGTH('中国'),DATALENGTH('abc123!')
--3、Right、left :返回一个字符串的右边或左边的一部分字符
select RIGHT('abcdef',3),LEFT('abcdef',3)
--4、Substring:字符串截取函数 SQL的下标从1开始
select SUBSTRING('abcdef',2,3) 
--5、charIndex:字符串查找函数
select CHARINDEX('a','bcadadfd',1)--’查找什么‘,‘具体’,查找第几个
--6、UPPER:字母大写转换函数
--7、LoWER:字母小写转换函数
select UPPER('abc123'),LOWER('ABc123中!')
--8、SPACE:产生空格函数
select len('abc' +SPACE(10)+'123')
--9、replicate:字符串重复函数
select REPLICATE('abc ',3)
--10、replace:字符替换函数
select REPLACE('oIoo000oooo','o','0')--后两个双引号表示:把什么替换成什么
--11、Stuff:字符替换函数
select STUFF('湖南武汉',2,1,'北')
select STUFF('中国长沙',3,0,'武汉')
--12、Ltrim和Rtrim:去掉字符串左边或右边全部空格
select LEN(LTRIM(' abc d ')),Len(RTRIM(' abc d '))
--13、Str:将数值转换为字符串函数
select STR(12345.7654,5,2) --8位2位小数位
--14、char:将一个ASCII值转换为一个字符
select CHAR(69),ASCII('*')

--日期函数
--1、getdate():返回服务器上当前时间
select GETDATE()
--2、datepart:返回一个日期的一部分值(整型)
--3、datename:返回一个日期的一部分值(字符串)
--返回一周的第几天
select DATEPART(DW,GETDATE()),DATENAME(DW,GETDATE())
--返回一年的第几周
select DATEPART(WEEK,GETDATE()),DATENAME(WEEK,GETDATE())
--4、datediff:日期比较函数
--返回每笔交易已经发生了多少天
use BankDB
select DAtediff(dd,TransDate,GETDATE()) from TransInfo
--5、dateADD:日期改变函数
select DATEADD(DAY,2,GETDATE())

--自定义一个函数,根据学员的姓名来获取学员的两科平均成绩
if OBJECT_ID('AvgScore') is not null
drop function AvgScore
go
create function AvgScore(@name varchar(50))
returns decimal as
begin
declare @stuId decimal=0
select @stuId=StuId from StuInfo where StuName =@name
declare @m decimal=0
select @m=AVG(WriteExam+LabExam)/2 from Exam where @stuId=StuId
return @m
end
go

select dbo.AvgScore('张三丰')

高级编程T-SQL函数的更多相关文章

  1. C++面向对象高级编程(六)转换函数与non-explicit one argument ctor

    技术在于交流.沟通,转载请注明出处并保持作品的完整性. 1.conversion function 转换函数 //1.转换函数 //conversion function //只要你认为合理 你可以任 ...

  2. Unix环境高级编程(七)fork函数总结

    在Unix/Linux中用fork函数创建一个新的进程.进程是由当前已有进程调用fork函数创建,分叉的进程叫子进程,创建者叫父进程.该函数的特点是调用一次,返回两次,一次是在父进程,一次是在子进程. ...

  3. UNIX环境高级编程——线程属性

    pthread_attr_t 的缺省属性值 属性 值 结果 scope PTHREAD_SCOPE_PROCESS 新线程与进程中的其他线程发生竞争. detachstate PTHREAD_CREA ...

  4. Oracle SQL高级编程——分析函数(窗口函数)全面讲解

    Oracle SQL高级编程--分析函数(窗口函数)全面讲解 注:本文来源于:<Oracle SQL高级编程--分析函数(窗口函数)全面讲解> 概述 分析函数是以一定的方法在一个与当前行相 ...

  5. oracle sql 高级编程 历史笔记整理

    20130909 周一 oracle sql 开发指南 第7章 高级查询 1.层次化查询select level,ttt.*,sys_connect_by_path(ttt.col1,',') fro ...

  6. SQL server学习(二)表结构操作、SQL函数、高级查询

    数据库查询的基本格式为: select ----输出(显示)你要查询出来的值 from -----查询的依据 where -----筛选条件(对依据(数据库中存在的表)) group by ----- ...

  7. UNIX环境高级编程——sigqueue、sigsuspend函数

    一.sigqueue函数 功能:新的发送信号系统调用,主要是针对实时信号提出的支持信号带有参数,与函数sigaction()配合使用. int sigqueue(pid_t pid, int sig, ...

  8. UNIX环境高级编程——TCP/IP网络编程 常用网络信息检索函数

    UNIX环境高级编程——TCP/IP网络编程   常用网络信息检索函数 gethostname()   getppername()   getsockname()   gethostbyname() ...

  9. SQL函数说明大全

    一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...

  10. SQL函数说明大全 (转)

    一旦成功地从表中检索出数据,就需要进一步操纵这些数据,以获得有用或有意义的结果.这些要求包括:执行计算与数学运算.转换数据.解析数值.组合值和聚合一个范围内的值等. 下表给出了T-SQL函数的类别和描 ...

随机推荐

  1. 664. Strange Printer

    class Solution { public: int dp[100][100]; int dfs(const string &s, int i,int j) { if(i>j)ret ...

  2. VS2010添加虚拟机发布的WebService引用

    首先,WebServer已在虚拟机中完成发布.在网页中浏览可以看到如下所示内容 需要注意的是在发布时要给网站设置IP地址.如果在添加网站时没有设置,之后可以在网站绑定中进行修改.步骤如下: 1.选中网 ...

  3. s2第二章深入c#类型

    S2第二章预习笔记  深入c# 数据类型 常用类型      java     c#     举例 整形          int     int     年龄 浮点型        float    ...

  4. redis的内存优化【转】

    Redis所有的数据都在内存中,而内存又是非常宝贵的资源.对于如何优化内存使用一直是Redis用户非常关注的问题.本文让我们深入到Redis细节中,学习内存优化的技巧.分为如下几个部分: 一.redi ...

  5. Nuke Python module的使用

    最近很多脚本工作都需要脱离nuke的gui环境运行,没有了script editor就必须要尝试Nuke Python module功能了.该模式可以执行大部分在GUI环境中的命令,在自动生成或者批量 ...

  6. autoit3编辑器SCITE字体设置

    选项→打开全局设置文件,就是SciTEGlobal.properties,修改下面的部分即可,保存之后立刻生效.如果不行,就打开用户设置文件SciTEUser.properties进行修改: font ...

  7. 前端-JavaScript1-4——JavaScript之变量

    变量(Variables),和高中代数学习的x.y.z很像,它们不是字母,而是蕴含值的符号. 它和直接量不同,直接量5,就是数字5:直接量”你好”就是字符串“你好”.现在这个变量不一样了,你看见一个a ...

  8. LSTM/RNN中的Attention机制

    一.解决的问题 采用传统编码器-解码器结构的LSTM/RNN模型存在一个问题,不论输入长短都将其编码成一个固定长度的向量表示,这使模型对于长输入序列的学习效果很差(解码效果很差). 注意下图中,ax ...

  9. Java八大排序算法

    Java八大排序算法: package sort; import java.util.ArrayList; import java.util.Arrays; import java.util.List ...

  10. C语言 链表(VS2012版)

    // ConsoleApplication2.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stdio.h> ...