--=======================================
-- 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. 服务调用restful或feign负载均衡ribbon

  2. format格式化和函数

    {[name][:][[fill]align][sign][#][0][width][,][.precision][type]}用{ }包裹name命名传递给format以命名=值 写法, 非字典映射 ...

  3. 初始C#(二)

    一 数组 定义:能存放任意多个同类型数据 声明与赋值:声明:数据类型[ ]变量名                                        赋值:变量名=new 数据类型[长度] ...

  4. mysql 判断某字段是否包含中文

    SELECT col FROM table WHERE LENGTH(col) != CHAR_LENGTH(col) LENGTH() 函数:返回字符串的长度,已字节符为单位 CHAR_LENGTH ...

  5. CSS3中的浮动

    一.标准文档流:指元素根据块元素或行内元素的特性按从上到下,从左到右的方式自然排列.这也是元素默认的排列方式 二.display属性 display:更改块级元素和行内元素的相互转换          ...

  6. JPA问题汇总

    JPATools生成的实体类对大小写敏感.如果一个数据库中大小写混乱,生成的实体类也会大小写都有.这种情况会导致HibernateSQL语句查询,每次都会查询第一个大小写字段,所以需要加映射关系.@C ...

  7. 使用element-ui 遇到的问题

    Pagination 分页 在使用分页的时候,每次切换pageSize的时候,需要把current-page置为1 重新加载数据. 但是当current-page !== 1的时候,修改current ...

  8. Ubuntu16.04 安装 MySQL

    本篇介绍如何在Ubuntu系统上安装MySQL数据库,以及介绍数据库的基本命令. 一.下载和安装MySQL 可以通过apt-get下载并安装 sudo apt-get install mysql-se ...

  9. Ros Kinetic 配置 OpenCV2和CV_bridge (Python, C++)

    本篇介绍如何在Ros-kinetic环境下运用opencv2进行开发的配置,系统平台为64位Ubuntu16.04. 需要系统环境: 1.Ros kinetic版本,一般自带cv_bridge, 若没 ...

  10. Linux下截屏方法

    参考百度经验 https://jingyan.baidu.com/article/48a42057c8e8dfa92525047c.html 第一种: 截屏部分画面并保存 快捷键Shift+PrtSc