--数学函数
--ABS绝对值,
select ABS(-99)
--ceiling取上限,
select CEILING(4.5)
--floor去下限
select FLOOR(4.5)
--power 几次方,
select POWER(2,2)
--round四舍五入,
select round (6.45,1)
--sqrt开平方
select SQRT(9)
--square平方
select SQUARE(5)

--字符串函数
--ASCII 返回字符串最左边的字符ascii码
select ASCII('name')
select ASCII(name)from student1--查看所有人名的首字符的ascii码
--char 将ascii码转换成字符
select CHAR(70)
select CHAR(chinese)from student1--讲所有语文分数转换成字符
--注意,(整数)所转换的表达式或者常量需要在0-256之间,超出的话输出n

--LEN 返回字符串的长度
select LEN('asdfghh')
select LEN(name)from student1 --显示所有姓名的长度

--charindex 返回字符串首个字符出现在某个字符串从头开始为几的索引
select CHARINDEX('d','asdfghhjkkhg')--索引从1开始
select CHARINDEX('23',age)from kaoshi --查看在23里面出现的索引

--difference 返回相似度 用0——4表示相似度
select DIFFERENCE('asddfghjk','adfjkgh')
--LEFT 表示从左边截取字符串
select LEFT('asfgdsssdgh',4)

--RIGHT 从右边
select right('asfgdsssdgh',4)

--lower 全部转化成小写
select LOWER('adasJFKSKdffsfa')

--upper 大写
select UPPER('AFADSFAsfsdfsSAD')

--Ltrim 去掉左边的空格
select LTRIM(' asd ')
--Rtrim 去掉右边的空格
select RTRIM(' asd ')

--patindex 相当于charindex 返回字符串所在字符中的首字符索引位
select PATINDEX('%dasda%','154dasda546')

--Replace 查找替换
select REPLACE(sex ,'女','姑娘')from student1--只显示,不更改
--replicat 复制粘贴
select REPLICATE('asd ',3)--一共三遍
--reverse 翻转
select REVERSE('asdfgghjk')

--space 空格
select 'a'+SPACE(5)+'bc'

--str 强制转换成字符串
select STR(123456.222,5,1)--参数1是需要转换的数值,参数2是转换之后保留的长度
--参数3是小数点后需要保留的位数
--注意,参数2在小于参数1整数部分位数时无法转换

--stuff
--从第几个索引的位置,看看需不需要向后删除几位,然后将需要插入的内容插入
--参数1是需要被插入的字符串
--参数2是从第几个索引开始
--参数3是是否需要向后删除几个字符
--参数4是新插入的字符
select STUFF('123456',5,2,'.454')

--substring
--截取字符串
--参数1是被截取的字符串
--参数2是从哪个索引开始
--参数3是截取的长度
select SUBSTRING('151111111111111111111111888861',1,4)

--1.时间日期函数:
set datefirst 1 --设置星期一为第一天
--datepart 函数,返回时间日期中的某一个部分
--参数1是指返回那一个部分
--参数2是指从那个时间日期中返回
--datefirst 是系统常量,使用时需要加上@@
select @@DATEFIRST as'1st day',DATEPART(dw,GETDATE())as 'tobay'
select GETDATE()--执行是后系统时间
--需要改变的类型,需要改变的数量,需要执行要改变的时间日期

select DATEADD(HH,5,'2015-12-12')
--datediff 算时间差, different 不同的,相差的
--需要改变的类型,开始的时间日期,结束的时间日期
select datediff(MM,'2013-12-31','2014-1-3')
declare @startday varchar(50)--声明变量时需要添加数据类型,
set @startday ='1993-11-1'--设置变量值
select DATEDIFF(DAY,@startday,GETDATE())--as '在线时间'
select day('1993-11-1')
select MONTH('1993-11-1')
select YEAR('1993-11-1')
--datepart 返回时间日期的某一个部分
--参数1是返回的哪一个部分
--参数2是以哪个日期作为被计算的日期
select DATEPART(YEAR,'2009-9-8')--返回年
select DATEPART(DY,'2009-9-8')--返回dayofyear 这一年的第几天
select DATEPART(QQ,'2009-9-8')--返回季度 共四个季度
--判断日期时间是否正确
select ISDATE('2012-2-29')--正确 返回1
select ISDATE('2011-2-29')--错误 返回0
--2.类型转换:

--数据类型转换 cast convert
--cast 先写被转换的value + as + 被转换成的类型
select CAST(1.999 as int)
select CAST(1.56656 as varchar(50))
select CAST(1.3996646 as decimal(18,2))
select cast(CAST('1.5656' as decimal(18,2)) as int)
select CAST('1.5656' as decimal(18,2))
--convert 参数1是需要转换成为的类型,参数2是需要被转换的value
select CONVERT(int , '99')
select CONVERT(decimal(18,2) , '89.9912')--在精确后面位数的时候会自动四舍五入
select CONVERT(varchar(50) , 3.1415926)

SQL-数学、字符串、时间日期函数和类型转换的更多相关文章

  1. SQL server 时间日期函数、类型转换

    一.日期与时间函数 二.子查询与分页查询

  2. SQl Server 函数篇 数学函数,字符串函数,转换函数,时间日期函数

    数据库中的函数和c#中的函数很相似 按顺序来, 这里价格特别的 print  可以再消息栏里打印东西 数学函数 ceiling()  取上限   不在乎小数点后面有多大,直接忽略 floor()   ...

  3. SQL server 数据库——数学函数、字符串函数、转换函数、时间日期函数

    数学函数.字符串函数.转换函数.时间日期函数 1.数学函数 ceiling()--取上限  select ceiling(oil) as 油耗上限 from car floor()--取下限 sele ...

  4. 【2017-03-13】Tsql 数学函数、字符串函数、转换函数、时间日期函数

    一.数学函数(针对值类型操作) 1.ceiling():取上限 只要小数点后有数字大于0,整数位自动进1 2.floor():取下限 将小数点位舍去,不管小数点位大小 3.round(四舍五入的值,保 ...

  5. SQL servcer 时间日期函数、数据类型转换

    1.时间日期函数 2.数据类型转换 3.习题 建立两个表,一个部门表,一个人员表.部门:部门的编号,部门的名称,部门的职责.人员:人员的编号,姓名,年龄,性别,cid所属部门

  6. SQL Fundamentals || Single-Row Functions || 日期函数date functions

    SQL Fundamentals || Oracle SQL语言   SQL Fundamentals: Using Single-Row Functions to Customize Output使 ...

  7. JS 字符串 时间 数字函数操作 事件

    字符串  操作 var s="abcdefg" s.tolowerCase()   转小写 s.toupperCase()   转大写 s.substring(2,5)   索引下 ...

  8. SQLite中的时间日期函数(转)

    SQLite包含了如下时间/日期函数: datetime().......................产生日期和时间date()...........................产生日期tim ...

  9. [转] PostgreSQL的时间/日期函数使用

    PS:http://blog.csdn.net/love_rongrong/article/details/6712883 字符串模糊比较 日期类型的模糊查询是不能直接进行的,要先转换成字符串然后再查 ...

随机推荐

  1. Python ZIP压缩

    ru=lambda x:x.decode('u8') rp=lambda x:x.replace('\\','/') gb=lambda x:x.decode('gbk') class ZIP: de ...

  2. mysql--sqlalchemy.exc.IntegrityError: (IntegrityError) (1215, 'Cannot add foreign key constraint'

    今天在使用mysql时遇到的问题,最后发现问题是,数据类型与外键数据类型不同,改正过来就没有问题了.

  3. Python’s SQLAlchemy vs Other ORMs[转发 6]SQLAlchemy

    SQLAlchemy SQLAlchemy is an open source SQL toolkit and ORM for the Python programming language rele ...

  4. Y Combinator

    常见的例子 阶乘函数: fact = (a) -> if a > 0 then a * fact(a - 1) else 1 问题的提出 如上,在fact函数中调用了fact本身,无法使用 ...

  5. ionic 的下拉刷新 与 上拉加载

    <ion-view view-title="消息通知"> <ion-content class="padding"> <!-- & ...

  6. 189. Rotate Array

    Rotate an array of n elements to the right by k steps. For example, with n = 7 and k = 3, the array  ...

  7. 程设大作业xjb写——魔方复原

    鸽了那么久总算期中过[爆]去[炸]了...该是时候写写大作业了 [总不能丢给他们不会写的来做吧 一.三阶魔方的几个基本定义 ↑就像这样,可以定义面的称呼:上U下D左L右R前F后B UD之间的叫E,LR ...

  8. @@identity的使用

    -- ============================================= -- Author: Qiuhua,Huang -- Create date: 08/09/2012 ...

  9. Spring AOP基本概念

    Spring AOP基本概念 目录 Spring AOP定义 AOP基本术语 通知类型 AOP定义 AOP基本术语 切面( Aspect ):一个能横切多个对象的模块化的关注点.对Spring AOP ...

  10. Sql Server xml 类型字段的增删改查

    1.定义表结构 在MSSM中新建数据库表CommunicateItem,定义其中一个字段ItemContentXml 为xml类型 2.编辑表数据,新增一行,发现xml类型不能通过设计器录入数据. 需 ...