字符串函数

lower(字符串表达式) | select lower('ABCDEF')返回 abcdef | 返回大写字符数据转换为小写的字符表达式。

upper(字符串表达式) | select upper('abcdef')返回 ABCDEF | 返回小写字符数据转换为大写的字符表达式。

ltrim(字符串表达式) | select ltrim('    abc')返回 abc | 返回删除了前导空格之后的字符表达式。

rtrim(字符串表达式) | select rtrim('abc    ')返回 abc | 返回删除了尾随空格之后的字符表达式。

left(字符串表达式,整数表达式) | select left('abcdefg',2) 返回 ab | 返回字符串中从左边开始指定个数的字符。

right(字符串表达式,整数表达式) | select right('abcdefg',2) 返回fg | 返回字符串中从右边开始指定个数的字符。

substring(字符串表达式,开始位置,长度) | select substring('abcdef',2,2)返回bc | 返回子字符串

len(字符串表达式) | select len('abcdefg')返回 7  select len('abcdefg     ') 返回7 | 返回指定字符串表达式的字符数,其中不包含尾随空格。

difference(字符串表达式1,字符串表达式2) | select difference('Green','Greene')返回4 |
返回一个0到4的整数值,指示两个字符表达式的之间的相似程度。0 表示几乎不同或完全不同,4表示几乎相同或完全相同。注意相似并不代表相等 space(整数表达式) | select 'a'+space(2)+'b' 返回 a b | 返回由指定数目的空格组成的字符串 str(float型小数[,总长度[,小数点后保留的位数]])|
eg:
select str(123.451)返回 123(123前面有空格)
select str(123.451,3)返回123
select str(123.451,7,3)返回123.451
select str(123.451,7,1)返回123.5
select str(123.451,5,3)返回123.5
select str(123.651,2)返回**
返回由数字转换成的字符串。返回字符数不到总长度的前面补空格,超过总长度的截断小数位。如果需要截断整数位则返回**。
注意在截断时遵循四舍五入
总长度。它包括小数点、符号、数字以及空格。默认值为 10。
小数点后最多保留16位。默认不保留小数点后面的数字

字符串函数

日期时间函数

dateadd(日期部分,数字,日期) | select dateadd(year,45,'1990-12-11') //2035-12-11 00:00:00.00 | 返回给指定日期加上一个时间间隔后的新的日期值。

datediff(日期部分,开始日期,结束日期) | select datediff(yy,'1990-12-11','2008-9-10')//18 | 返回两个指定日期的指定日期部分的差的整数值。

datepart(日期部分,日期) | select datepart(mm,'2007-12-11')//12 | 返回表示指定日期的指定日期部分的整数。

getdate() | select getdate()\\2015-06-28 18:57:24.153 | 返回当前系统日期和时间。

getutcdate() | select getutcdate()\\2015-06-28 18:57:24.153 | 返回表示当前的 UTC(世界标准时间)时间。即格林尼治时间(GMT)

dateadd、datediff、datename、datepart的日期部分含义

日期部分  含义    缩写
year yy,yyyy
quarter q,qq
month m,mm
dayofyear dy,y
day dd,d
week 星期 wk,ww
hour 小时 hh
minute 分钟 mi,n
second s,ss
millisecond 毫秒 ms
---恢复内容开始---

今天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=0

昨天的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())=1

7天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=7

30天内的所有数据:select * from 表名 where DateDiff(dd,datetime类型字段,getdate())<=30

本月的所有数据:select * from 表名 where DateDiff(mm,datetime类型字段,getdate())=0

本年的所有数据:select * from 表名 where DateDiff(yy,datetime类型字段,getdate())=0

查询今天是今年的第几天: select datepart(dayofyear,getDate())

查询今天是本月的第几天:1. select datepart(dd, getDate())  

                                                2.select day(getDate())

查询本周的星期一日期是多少 (注意:指定日期不能是周日,如果是周日会计算到下周一去。所以如果是周日要减一天)
SELECT DATEADD(wk,DATEDIFF(wk,0,getdate()),0) 查询昨天日期:select convert(char,dateadd(DD,-1,getdate()),111) //111是样式号,(100-114) 查询本月第一天日期:Select DATEADD(mm, DATEDIFF(mm,0,getdate()), 0) as firstday 查询本月最后一天日期:Select dateadd(ms,-3,DATEADD(mm, DATEDIFF(m,0,getdate())+1, 0)) as lastday //修改-3的值会有相应的变化 本月有多少天:select datepart(dd,dateadd(dd,-1,dateadd(mm,1,cast((cast(year(getdate()) as varchar)+'-'+cast(month(getdate()) as varchar)+'-01' ) as datetime )))) 求两个时间段相差几天:select datediff(day,'2016/5/17','2016/8/20') as daysum 在指定的日期上±N天:select convert(char,dateadd(dd,1,'2016/8/20'),111) as riqi //输出2016/8/21 在指定的日期上±N分钟:select dateadd(mi,-15,getdate()) //查询当前时间15分钟之前的日期

SQL语句来查询今天、昨天、7天内、30天的数据

数学函数

round(数值表达式[,长度[,操作方式]])
select round(1236.555,2)\\1236.560 select round(1236.555,2,1)\\1236.550 select round(1236.555,0)\\1237.000 select round(1236.555,-1)\\1240.000 select round(1236.555,-1,1)\\1230.000 select round(1236.555,-4)\\0.000 select round(5236.555,-4)\\出现错误 select round(5236.555,-4,1)\\0.000 返回一个数值,舍入到指定的长度。注意返回的数值和原数值的总位数没有变化。 长度:舍入精度。如果长度为正数,则将数值舍入到长度指定的小数位数。如果长度为负数,则将数值小数点左边部分舍入到长度指定的长度。注意如果长度为负数,并且大于小数点前的数字个数,则将返回 0。如果长度为负数并且等于小数点前的数字个数且操作方式为四舍五入时,最前面的一位小于5返回0,大于等于5会导致错误出现,如果操作方法不是四舍五入时则不会出现错误,返回结果一律为0。 操作方式:默认为0遵循四舍五入,指定其他整数值则直接截断。 ceiling(数值表达式) | select ceiling(5.44)\\6 select ceiling(-8.44)\\-8 | 返回大于或等于指定数值表达式的最小整数。 floor(数值表达式) | select floor(5.44)\\5 select floor(-8.44)\\-9 | 返回小于或等于指定数值表达式的最大整数。 power(数值表达式1,数值表达式2) | select power(5,2)返回25 | 返回数值表达式1的数值表达式2次幂 sqrt(数值表达式) | select sqrt(25)\\5 | 返回数值表达式的平方根 abs(数值表达式) | select abs(-23.4)\\23.4 | 返回指定数值表达式的绝对值(正值) pi() | select pi()\\3.14159265358979 | 返回π的值

数学函数

数据类型转换函数

convert(数据类型[(长度)],表达式[,样式])
select convert(nvarchar,123) \\123
select  convert(nvarchar ,getdate())\\04 28 2015 10:21PM
select  convert(nvarchar ,getdate(),120)\\2009-04-28 12:22:2
将一种数据类型的表达式显式转换为另一种数据类型的表达式。
长度:如果数据类型允许设置长度,可以设置长度,例如varchar(10)
样式:用于将日期类型数据转换为字符数据类型的日期格式的样式

cast(表达式 as 数据类型[(长度)])
select cast(123 as nvarchar)\\123
select N'年龄:'+cast(23 as nvarchar)\\年龄:23
将一种数据类型的表达式显式转换为另一种数据类型的表达式。

CONVERT是专对SQL Server使用的,使日期与时间值,小数之间转换具有更宽的灵活性
CAST是两种功能中更具ANSI标准的功能,即虽然更具便携性(比如,使用CAST的函数能更容易的被其它数据库软件使用),但功能相对弱一些。

Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
Select CONVERT(varchar(100), GETDATE(), 112): 20060516
Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM 时间格式转换

时间转换格式

引用:

http://www.cnblogs.com/ATree/archive/2011/03/08/SQL_Server_2005_substring_convert.html

SQL 数据库函数的更多相关文章

  1. [Django]模型提高部分--聚合(group by)和条件表达式+数据库函数

    前言:本文以学习记录的形式发表出来,前段时间苦于照模型聚合中group by 找了很久,官方文章中没有很明确的说出group by,但在文档中有提到!!! 正文(最后编辑于2016-11-12): 聚 ...

  2. sql 数据量高并发的数据库优化(转)

    Mysql 大数据量高并发的数据库优化 一.数据库结构的设计 如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能.所以,在一个系统开始实 ...

  3. PHP学习之[第09讲]PHP 的 Mysql 数据库函数 (微型博客系统)

    一.数据库函数: mysql_connect(数据库地址,用户名,密码) mysql_select_db(数据库名) mysql_set_chartset(‘编码’) //PHP5.2.3以后的函数 ...

  4. php Mysql 和Mysqli数据库函数整合

    PHP Mysql和Mysqli数据库函数整合 服务器如果支持mysqli函数将优先mysqli函数进行数据库操作 否则将调用mysql函数进行数据库操作 用法SQL::connect(host,us ...

  5. Entity Framework 6 Recipes 2nd Edition(11-11)译 -> 在LINQ中调用数据库函数

    11-11. 在LINQ中调用数据库函数 问题 相要在一个LINQ 查询中调用数据库函数. 解决方案 假设有一个任命(Appointment )实体模型,如Figure 11-11.所示, 我们想要查 ...

  6. 批量处理sql 数据存入xml类型列

    个人记录 需求:当表T1 ItemCode和表T2 ItemName的数据相等时,将表T2所对应的ID和ItemName列的数据分别存入表T1 CAOZUO字段的id元素和text元素的文本中. 下面 ...

  7. [.NET] SQL数据总笔数查询

    [.NET] SQL数据总笔数查询 程序下载 范例下载:点此下载 原始码下载:点此下载 NuGet封装:点此下载 数据查询 开发系统时,使用C#执行SQL查询指令,就可以从SQL数据库里查询所需数据. ...

  8. [.NET] SQL数据分页查询

    [.NET] SQL数据分页查询 程序下载 范例下载:点此下载 原始码下载:点此下载 NuGet封装:点此下载 数据查询 开发系统时,使用C#执行SQL查询指令,就可以从SQL数据库里查询所需数据. ...

  9. cache应用(asp.net 2.0 SQL数据缓存依赖 [SqlCacheDependency ] )

    Asp.net 2.0 提供了一个新的数据缓存功能,就是利用sql server2005 的异步通知功能来实现缓存 1.首先在sqlserver2005 中创建一个test的数据库. 在SQL Ser ...

随机推荐

  1. ASP.NET 使用 MySQL

    基本是通用的 C#与MySQL的交互, 先添加MySQL.Data.dll(位于MySQL安装目录下的Connector NET 8.0\Assemblies${version}目录下)引用, 之后代 ...

  2. 9.1 mysql+centos7+主从复制

    MYSQL(mariadb) MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的 ...

  3. Spring---BeanFactory与ApplicationContext简介

    BeanFactory概念 Spring通过一个配置文件描述bean和bean之间的依赖关系,然后利用java语言的反射功能实例化bean,并建立bean之间的依赖关系.Spring的IOC容器在完成 ...

  4. linux 广播

    广播是一台主机向局域网内的所有主机发送数据.这时,同一网段的所有主机都能接收到数据.发送广播包的步骤大致如下: (1)确定一个发送广播的接口,如eth0 (2)确定广播的地址,通过ioctl函数,请求 ...

  5. iOS程序执行顺序和UIViewController 的生命周期(整理)

    说明:此文是自己的总结笔记,主要参考: iOS程序的启动执行顺序 AppDelegate 及 UIViewController 的生命周期 UIView的生命周期 言叶之庭.jpeg 一. iOS程序 ...

  6. Kotlin将Realm提升到更高层次

    作者:Víctor Manuel Pineda 时间:Feb 14, 2017 原文链接:https://antonioleiva.com/kotlin-realm-extensions/ 当有人问我 ...

  7. sqlalchemy 查询姿势总结

    sqlalchemy查询使用 1.带条件查询 查询是最常用的,对于各种查询我们必须要十分清楚,首先是带条件的查询 #带条件查询 rows = session.query(User).filter_by ...

  8. 孤荷凌寒自学python第十五天python循环控制语句

    孤荷凌寒自学python第十五天python循环控制语句 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) python中只有两种循环控制语句 一.while循环 while 条件判断式 1: ...

  9. luajit的字节码

    http://blog.csdn.net/zzz3265/article/details/41146569 这里写出了luajit的字节码

  10. hihoCoder #1902 字符替换

    解法 这题比赛时过的人很多,我却没思路,糊里糊涂写了个强联通分量,得了 80 分. 这题思路是这样的. 一个替换操作可以看做一个有向边,所以题目实际上给出了一个有向图 $G$,一个节点代表一个字母. ...