--数学函数
--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. Leetcode--Swap Nodes in Pairs

    最傻的方法: ListNode *swapPairs(ListNode *head) { if (head == NULL) return NULL; ListNode *temp = ); List ...

  2. Eclipse中全局搜索和更替

    Eclipse全局搜索步骤  使用快捷键"ctrl+H"打开文件搜索对话框,选择"File Search"标签,在Containing text中输入你需要搜索 ...

  3. This TableLayout layout or its LinearLayout parent is possibly useless

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=&quo ...

  4. sql数据库表被锁,无法查询

    查看被锁表:   select   request_session_id   spid,OBJECT_NAME(resource_associated_entity_id) tableName    ...

  5. 移动端WEB开发备忘录

    META相关 1. 添加到主屏后的标题(IOS)  <meta name="apple-mobile-web-app-title" content="标题" ...

  6. 在VMware中安装ubuntu出现菜单栏无法显示的情况

    在VMware中安装ubuntu出现菜单栏无法显示的情况 其实这个问题的原因时由于VMware中enable了3D图形加速界面,只需要shutdown当前运行的虚拟机,然后在虚拟机,设置,显示器,3D ...

  7. 一个Woker类,当id和name相同时,系统判断两个工人是相等的,打印工人对象时显示“工人:id和name”。

    public class Worker { private int id; private String name; private double salary; public boolean equ ...

  8. Object有哪些公用方法

    Object是所有类的父类,任何类都默认继承Object.Object类到底实现了哪些方法? 1.clone方法 保护方法,实现对象的浅复制,只有实现了Cloneable接口才可以调用该方法,否则抛出 ...

  9. 解决远程连接mysql错误1130代码的方法

    命令行登陆 mysql -uroot -p 输入密码后登陆 use mysql;   select host,user from user ;     grant allon *.*to root i ...

  10. python 版 mldivide matlab 反除(左除)《数学建模算法与程序》Python笔记

    今天在阅读数学建模的时候看到了差分那章 其中有一个用matlab求线性的代码,这里我贴出来 这里我送上 Python代码 In [39]: import numpy as np ...: from s ...