--=======================================
-- SQL常用内置函数
--======================================= --判断为null函数
declare @abc varchar(5)
set @abc='mnw'
select isnull(@abc,0); --如果变量abc值为null,则取0,否则取被赋的值 --查找索引函数
select charindex('abc','bac abc fmd abc'); --获取字符串abc在长字符串bac abc fmd abc中的索引位置,索引默认从1开始找
select charindex('abc','bac abc fmd abc',9); --索引从9开始找 --重复获取函数
select replicate('m',3); --按指定次数重复字符表达式,将m字符重复三次
select replicate('abc',2);--将字符串abc重复2次 --大小写转换函数
select len('datazsrt'); --获取字符串长度
select lower('ADRTddd'); --转小写
select upper('data');--转大写 --替换截取函数
select substring('abcdef111',2,3); --截取字符串 select replace('dadt123','t1','AA'); --替换字符串 --类型转换函数
select cast('2015-08-02' as datetime) as 日期类型; --数据类型转换,CAST是ANSI兼容的,而CONVERT则不是 select 'ab'+cast(1 as varchar);-- 将1转化为字符串与ab相加 select convert(datetime,'2015-08-02'); --数据类型转换,与cast相同 select convert(varchar(19),getdate(),113); --不同的是convert还提供一些特别的日期格式转换,而cast没有这个功能 select format(getdate(),'yyyy/mm/dd'); --将日期转化为规定的格式 --数学函数
select round(2.15,1); --四舍五入,第二个参数索引从0开始,即:0表示小数后第一位进行判断 select ceiling(2.158); --向上取整 select floor(2.713); --向下取整 --日期函数
select getdate(); select datepart(mm,'2015-08-04 15:28:26'); --返回日期的某一部分 yy,mm,dd,hh,mi,ss, select dateadd(dd,-25,'2015-08-04 15:28:26'); --在日期中加上或减去制定的时间间隔,给天数减25天 select datediff(day,'2008-06-05','2008-08-05') as 天数; --返回两个日期之间的天数 --聚合函数
count(),min(),max(),avg(),sum() --4个排名函数,都可以与over()结合使用
row_number(),rank(),dense_rank(),ntile() select row_number() over(order by column_name),* from table_name; --按某个字段排名然后查询出所有值,它会为查询出来的每一行记录生成一个序号,依次排序且不会重复
select row_number() over(order by column_name),* from table_name order by column_name desc; --先按某个字段排名给出序号,然后再根据另一个字段进行倒叙排列,排出序号可能会被打乱 select rank() over(order by column_name),* from table_name; --rank函数会考虑到column_name中的值会重复或相同,那个给出的序号也会相同。但生成的序号不是连续的,rank是跳跃排序 select dense_rank() over(order by column_name),* from table_name; --dense_rank函数不同与rank函数,它生成的序号是连续的,dense_rank不会跳跃 --ntile()函数还是比较麻烦的排序分组函数 select ntile(4) over(order by column_name des),* from table_name; --先对column_name进行倒序排列, 参数4表示分为4组,每组中有多少个相同的序号要根据(总记录数/总组数)+1 条 --如果一个表中有6条数据,那么(6/4)+1=2;每组中有两个相同的记录数,末尾的根据情况分配,必须要分4组。但如果是8条数据,能整除,8/4=2;就不需要再加1,每组中平均分两条相同记录数的数据

SqlServer常用内置函数的更多相关文章

  1. MYSQL常用内置函数详解说明

    函数中可以将字段名当作变量来用,变量的值就是该列对应的所有值:在整理98在线字典数据时(http://zidian.98zw.com/),有这要一个需求,想从多音字duoyinzi字段值提取第一个拼音 ...

  2. Python常用模块中常用内置函数的具体介绍

    Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...

  3. MySQL学习笔记_7_MySQL常用内置函数

    MySQL常用内置函数 说明: 1)可以用在SELECT/UPDATE/DELETE中,及where,orderby,having中 2)在函数里将字段名作为参数,变量的值就是字段所对应的每一行的值. ...

  4. PYTHON语言之常用内置函数

    一 写在开头本文列举了一些常用的python内置函数.完整详细的python内置函数列表请参见python文档的Built-in Functions章节. 二 python常用内置函数请注意,有关内置 ...

  5. Python的常用内置函数介绍

    Python的常用内置函数介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.取绝对值(abs) #!/usr/bin/env python #_*_coding:utf-8_ ...

  6. python中的运算符及表达式及常用内置函数

    知识内容: 1.运算符与表达式 2.for\while初步了解 3.常用内置函数 一.运算符与表达式 python与其他语言一样支持大多数算数运算符.关系运算符.逻辑运算符以及位运算符,并且有和大多数 ...

  7. python第十八课——常用内置函数

    常用内置函数:round(): print(round(3.14),round(3.99)) print(round(3145.926,-2),round(413.575,2)) abs(): pri ...

  8. php2go - Go 实现 PHP 常用内置函数

    [转]http://www.syyong.com/Go/php2go-Use-Golang-to-implement-PHP-s-common-built-in-functions.html 使用Go ...

  9. Python基础(二)——常用内置函数

    1. 常用内置函数 (1)isinstance(object, classinfo) 用于判断一个对象是否为某一类型. object  是实例对象 classinfo 是基本类型如 int, floa ...

随机推荐

  1. CopyOnWriteArrayList&Collections.synchronizedList()

    1.ArrayList ArrayList是非线性安全,此类的 iterator() 和 listIterator() 方法返回的迭代器是快速失败的:在创建迭代器之后,除非通过迭代器自身的 remov ...

  2. .Netcore使用Session

    1.使用Session(进程内) 在startup中添加方法 services.AddSession  app.UseSession() services.AddDistributedMemoryCa ...

  3. SqlServer表中添加新字段

    表中添加新字段ALTER TABLE 表名 ADD 字段名 VARCHAR(20) NULL 表中添加自增idalter table lianxi add id int primary key IDE ...

  4. window配置 mysql 详细步骤

    1.配置环境变量:右击“我的电脑”-->"高级"-->"环境变量" 3)在(系统变量)path变量(已存在不用新建)添加变量值:G:\MySQL\m ...

  5. ssl证书安装到iis服务器

    1.先购买ssl证书, 2.对付会先发一份邮件到你的邮箱,进行验证 3.再查看邮箱,会发现有了对应的证书文件. 附件会有一个压缩包,里面包含4份证书文件, 还有一个通配符的字符串. 4.下载之后, 先 ...

  6. 1. qt 入门-整体框架

    总结: 本文先通过一个例子介绍了Qt项目的大致组成,即其一个简单的项目框架,如何定义窗口类,绑定信号和槽,然后初始化窗口界面,显示窗口界面,以及将程序的控制权交给Qt库. 然后主要对Qt中的信号与槽机 ...

  7. cocos2dx为Sprite添加触摸事件监听器

    1.首先头文件定义事件处理的函数原型 private: bool onTouchBegan(Touch* tTouch,Event* eEvent);//手指按下事件 void onTouchMove ...

  8. linux下不能拼通www.baidu.com

    1.打开虚拟机,通过命令修改内容如下 vi /etc/sysconfig/network-scripts/ifcfg-eth0 2.将信息修改如下: 3.ping www.baidu.com 查看是否 ...

  9. String 与 StringBuffer的差别

    原文:http://blog.csdn.net/yirentianran/article/details/2871417 在Java中有3个类来负责字符的操作. 1.Character 是进行单个字符 ...

  10. python中时间、日期、时间戳的转换

    1.简介 在编写代码时,往往涉及时间.日期.时间戳的相互转换. 2.示例 # 引入模块 import time, datetime 2.1 str类型的日期转换为时间戳 # 字符类型的时间 tss1 ...