1. 文本函数

    --系统函数位置: 可编程性→函数→系统函数
    
    -- 查询ASCII码
    select ASCII('a') --查询数值对应的ASCII码
    select CHAR(97) --Left 、 Right 截取字符串
    Use SchoolDB
    Go
    select * from Student where LEFT(StuEnName,1)='j'
    select * from Student where Right(StuEnName,1)='n' --CHARINDEX 第一次出现字符的位置
    select CHARINDEX('i',StuEnName,1),* from Student --字符串长度
    select LEN(StuEnName),* from Student -- TEXTPTR 返回对应于varbinary格式的Text,Ntext,或 image列的文本指针
    select *,TEXTPTR(Remark) from Student where StuID='001' --检查特定文本的指针 是否是有效的text,text或image
    select *,TEXTVALID('Student.Remark',TEXTPTR(Remark)) from Student where StuID='001'
  2. 日期函数
     ---------------日期函数-----------------
    select GETDATE()
    select GETUTCDATE() --世界标准时间值 select DAY(GETDATE()) --今年的第几天
    select Month(GETDATE()) --今天的第几个月
    select Year(GETDATE()) select DATEPART(Quarter,GETDATE()) --季度
    select DATEPART(Month,GETDATE()) --月份
    select DATEPART(WEEK,GETDATE()) --今天的第几周
    select DATEPART(Year,GETDATE()) --年
    select DATEPART(DAYOFYEAR,GETDATE())
    select DATEPART(WEEKDAY,GETDATE()) --本周的第几天,从周日开始
    select DATENAME(WEEKDAY,GETDATE()) --星期几 --日期转义
    select CONVERT(varchar(10),GETDATE(),120) --2017-01-16
    select CONVERT(varchar(10),GETDATE(),112) --20170116 select Cast(GETDATE() as varchar(10)) --01 16 2017
    select Cast(1 as char(1))+'2345' --数值型转为字符型后,连接字符 --日期加减
    select DATEADD(dd,-1,GETDATE()) -- 日期
    select DATEADD(qq,-1,GETDATE()) -- 季度 --Sql Server 把0解释为 1900年1月1日
    select DATEPART(YEAR,0),DATEPART(MONTH,0),DATEPART(DAY,0)
  3. 系统函数
     ---------------系统函数-----------------
    select COL_LENGTH('dbo.Student','StuName') --字段长度
    select OBJECT_ID('dbo.Student') --表对应的ID
    select COL_Name( OBJECT_ID('dbo.Student'),1) --表第一个字段的名称 select DB_ID('SchoolDB') --数据库编号
    select HOST_ID(),HOST_Name() --宿机信息 select USER_NAME()
  4. 聚合函数

    ---------------聚合函数-----------------

      select AVG(StuAge) as 平均年龄 from Student
    select SUM(StuAge) as 平均年龄 from Student

     日期函数补充:

  5. --基准年 : 1990年1月1日
    SELECT DATEPART(YEAR,0),DATEPART(MONTH,0),DATEPART(DAY,0) --DATENAME
    SELECT DATENAME(DAY,GETDATE()) -- 01
    SELECT DATENAME(WEEKDAY,GETDATE()) -- 星期三 SELECT CONVERT(VARCHAR(10),GETDATE(),120) --2017-09-27
    SELECT CONVERT(VARCHAR(10),GETDATE(),112) --20170927
    SELECT YEAR(GETDATE())
    
    SELECT CAST('12.34534' AS decimal(18,2))
    
    SELECT SUM(ISNULL(5,0)) -- SUM汇总的时候,最好考虑到NULL的情况
    
    SELECT COUNT(DISTINCT(Sex)) FROM Student -- 先去重复,再进行统计
    

      

SQL Server 2012 - 内置函数的更多相关文章

  1. SQL Server 常用内置函数(built-in)持续整理

    本文用于收集在运维中经常使用的系统内置函数,持续整理中 一,常用Metadata函数 1,查看数据库的ID和Name db_id(‘DB Name’),db_name('DB ID') 2,查看对象的 ...

  2. SQL Server 常用内置函数

    本文用于收集在运维中经常使用的系统内置(built-in)函数,持续整理中 一,常用Metadata函数 1,查看数据库的ID和Name db_id(‘DB Name’),db_name('DB ID ...

  3. oracle 与sql server 部分内置函数替换

    1,trunc--convert oracle: select trunc(sysdate) from dual   输出:2016/5/24 sql server:select CONVERT(va ...

  4. SQL Server 2012中LEAD函数简单分析

    LEAD函数简单点说,就是把下一行的某列数据提取到当前行来显示,看示例更能解释清楚,先看测试用脚本 DECLARE @TestData TABLE( ID INT IDENTITY(1,1), Dep ...

  5. sql server 2012 自定义聚合函数(MAX_O3_8HOUR_ND) 计算最大的臭氧8小时滑动平均值

    采用c#开发dll,并添加到sql server 中. 具体代码,可以用visual studio的向导生成模板. using System; using System.Collections; us ...

  6. SQL控制语句中内置函数讲解

    一.伪表.系统内置的只有一行一列数据的表.常用来执行函数. select 函数名 from dual 注:以下所有函数为了方便理解均用 伪表 做为事例! 二. 时间函数 1.sysdate:获取数据库 ...

  7. oracle数据库 SQL语句、内置函数大全

    1.数值函数 函数 返回值 样例 显示 CEIL(n)      大于或等于数值n的最小整数 SELECT CEIL(10.6) FROM TABLE_NAME; 11 FLOOR(n)  小于等于数 ...

  8. 【SQL】MySQL内置函数中的字符串函数和日期时间函数

    字符串函数 --拼接字符串组成新的字符串 Select concat(‘A’,’B’); --返回字符串长度 Select length(“CAT”) --返回子字符串在字符串中首次出现的位置,没有返 ...

  9. SQL中的内置函数

    IsNull的使用 isnull(name,' ')<>' '    ---如果name为null则就将name转化为' ',然后判断不等于' ',    目的:判断name不等于null ...

随机推荐

  1. Linux下安装MySQL-5.7

    写在前面:此博客是针对MySQL5.7安装教程,其他版本可能略有不同,仅供参考. 第一步:下载mysql 在Linux终端使用wget命令下载网络资源: wget http://mirrors.soh ...

  2. Android状态选择器用法总结

    原创文章,转载请注明出处http://www.cnblogs.com/baipengzhan/p/6284682.html 本文首先列出常见状态选择器的创建,然后按照常用控件来分别列出状态选择器的具体 ...

  3. 一个基于DpperHelper的t4模板

    自定义模板,空的类(目的是和t4生成的模板分开,以免被覆盖) ExtensionDAL <#@ template debug="false" hostspecific=&qu ...

  4. windows做时间服务器,linux和windows时间同步

    找了很多的资料,都没有windows做时间服务,linux同步windows的时间的,最后自己找了一些软件,终于搞定了,写出来给大家共享,以免大家多走弯路 首先在http://www.meinberg ...

  5. hdu_1348_Wall(凸包)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1348 题意:让你求n个点的凸包,凸包离点的距离为l 题解:就凸包周长+一个半径为l的圆周长 #incl ...

  6. hdu_1011_Starship Troopers(树形DP)

    题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1011 题意:有N个房间,房间的连通性为树形的,就是说你要占领子结点,必须要先占领 父结点,每个房间有第 ...

  7. LeetCode OJ 104. Maximum Depth of Binary Tree

    Given a binary tree, find its maximum depth. The maximum depth is the number of nodes along the long ...

  8. 关于Select * 与Select 字段名 的问题!

    [转]http://blog.csdn.net/tongyu2009/article/details/8252418 1.SELECT * 语句取出表中的所有字段,不论该字段的数据对调用的应用程序是否 ...

  9. 转 linux下xargs命令用法详解

    xargs在linux中是个很有用的命令,它经常和其他命令组合起来使用,非常的灵活. xargs是给命令传递参数的一个过滤器,也是组合多个命令的一个工具.它把一个数据流分割为一些足够小的块,以方便过滤 ...

  10. Happy Matt Friends

    Happy Matt Friends Time Limit: 6000/6000 MS (Java/Others)    Memory Limit: 510000/510000 K (Java/Oth ...