当前位置: 首页 > news >正文

《SqlServer 系列》 - 函数

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

数学函数

-- 绝对值
select abs(-3.14);
-- 随机数
select rand();--0-1之间
select rand(2);--只产生一次,继续运行不变
-- 四舍五入
select round(1.5555,2);--四舍五入:1.5600
select ceiling(1.1);--舍入到最大整数:2
select floor(1.9);--舍入到最小整数:1
-- 三角函数
select sin(1);--正弦
select cos(1);--余弦
select tan(1);--正切
select asin(1);--反正弦
select acos(1);--反余弦
select atan(1);--反正切
select tan2(1,1),atan(1);--反正切
select cat(1);--余切
-- 圆周率
select pi();
-- 角度制与弧度制
select degrees(1),1*180/pi();--弧度制转角度制:角度制=弧度制*100/π
select radians(1),1*pi()/180;--角度制转弧度制:弧度制=角度制*π/180
-- 求一个数的运算符号
select sign(-3.14),sign(3.14);大于0返回1;小于0返回-1
-- 两个数相除
select 7/3;--2
select 7%3;--1
-- 指数与平方根
select power(2,3);--8
select sqrt(16);--4

字符串函数

-- 字符串的长度
select len('Kimisme')
-- 大小写转换
select lower('JACK');
select upper('rose');
-- 字符串去空格
select ltrim('   love');
select rtrim('love   ');
select ltrim(rtrim('   love   '));
-- 字符串截取
select left('abcdefg',3);--abc
select right('abcdefg',3);--efg
select substring('abcdefg',3,2);--cd
-- 字符串替换
select replace('Hello,World','World','Python');
-- 字符串转义
select ascii('a');--97
select char(97);--a
-- 字符串出现位置
select charindex('m','kimisme');--3
-- 反转字符串
select reverse('abc');--cba

日期函数

日期格式化

-- 获取当前时间
select getdate();--2015-08-11 20:25:30.973
-- 日期格式化
select convert(varchar(50),getdate(),101)  --08/11/2015
select convert(varchar(50),getdate(),102)  --2015.08.11
select convert(varchar(50),getdate(),103)  --11/08/2015
select convert(varchar(50),getdate(),104)  --11.08.2015
select convert(varchar(50),getdate(),105) --11-08-2015
select convert(varchar(50),getdate(),106) --11 08 2015
select convert(varchar(50),getdate(),107) --08 11, 2015
select convert(varchar(50),getdate(),108)  --20:26:11
select convert(varchar(50),getdate(),109) --08 11 2015 10:53:15:397PM
select convert(varchar(50),getdate(),110) --08-11-2015
select convert(varchar(50),getdate(),111) --2015/08/11
select convert(varchar(50),getdate(),112)  --20150811
select convert(varchar(50),getdate(),113) --11 08 2015 22:52:17:143
select convert(varchar(50),getdate(),114) --22:53:45:847
select convert(varchar(50),getdate(),120)  --2015-08-11 22:45:34
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','') --20150811225416

日期差额

select dateadd(year,3,'2015-08-11 20:25:30.973') --2018-08-11 20:25:30.973 --年
select dateadd(quarter,1,'2015-08-11 20:25:30.973') --2015-11-11 20:25:30.973--季度
select dateadd(month,3,'2015-08-11 20:25:30.973') --2015-11-11 20:25:30.973--月份
select dateadd(day,3,'2015-08-11 20:25:30.973') --2015-08-14 20:25:30.973 -- 日
select dateadd(hour,3,'2015-08-11 20:25:30.973') --2015-08-11 23:25:30.973 -- 小时
select dateadd(minute,3,'2015-08-11 20:25:30.973') --2015-08-11 20:28:30.973 --分
select dateadd(second,3,'2015-08-11 20:25:30.973') --2015-08-11 20:25:33.973 --秒
select dateadd(millisecond,3,'2015-08-11 20:25:30.973') --2015-08-11 20:25:30.977 --毫秒

日期的其他操作

-- 计算两个日期相差几天
select datediff(day,'2015-08-11','2015-08-14') -- 3
-- 计算一个日期是星期几
select datename(weekday,'2015-08-11') --星期二
-- 获取日期的指定部分
select datepart(year,'2015-08-11') – 2015
select datepart(month,'2015-08-11') – 8
select datepart(day,'2015-08-11') – 11

 

转载于:https://my.oschina.net/kimisme/blog/1602444

相关文章:

  • Android 100+行实现本地跳一跳辅助(不需要连接电脑)
  • MyBatis DAO层传递参数到mapping.xml
  • 微内核与面向组件
  • 运维学python之爬虫中级篇(二)线程、协程
  • 资料推荐--Google Java编码规范
  • Python中的string模块的学习
  • bzoj千题计划205:bzoj3529: [Sdoi2014]数表
  • 关于多线程的参数问题
  • sudo、磁盘结构、echo,awk,python计算、RAID0和1的区别
  • jsp页面按时间排序
  • 18载艰苦创业,曾动念房地产转型,讯飞的江湖夜雨和桃李春风
  • UML--------------------类图
  • 如何使用MACS进行peak calling
  • 使用mysqladmin命令修改MySQL密码与忘记密码
  • text-decoration与color属性
  • 【vuex入门系列02】mutation接收单个参数和多个参数
  • 【刷算法】求1+2+3+...+n
  • 【许晓笛】 EOS 智能合约案例解析(3)
  • 〔开发系列〕一次关于小程序开发的深度总结
  • crontab执行失败的多种原因
  • Django 博客开发教程 16 - 统计文章阅读量
  • export和import的用法总结
  • Java,console输出实时的转向GUI textbox
  • Javascripit类型转换比较那点事儿,双等号(==)
  • JS创建对象模式及其对象原型链探究(一):Object模式
  • JS基础之数据类型、对象、原型、原型链、继承
  • KMP算法及优化
  • leetcode98. Validate Binary Search Tree
  • MD5加密原理解析及OC版原理实现
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • react-native 安卓真机环境搭建
  • spring + angular 实现导出excel
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • vue脚手架vue-cli
  • 闭包,sync使用细节
  • 简单数学运算程序(不定期更新)
  • 爬虫进阶 -- 神级程序员:让你的爬虫就像人类的用户行为!
  • 算法之不定期更新(一)(2018-04-12)
  • 跳前端坑前,先看看这个!!
  • 详解移动APP与web APP的区别
  • 中国人寿如何基于容器搭建金融PaaS云平台
  • ​Linux·i2c驱动架构​
  • #Z2294. 打印树的直径
  • #鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行
  • $.each()与$(selector).each()
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (Redis使用系列) Springboot 实现Redis 同数据源动态切换db 八
  • (一)WLAN定义和基本架构转
  • *Django中的Ajax 纯js的书写样式1
  • .NET NPOI导出Excel详解
  • .Net Winform开发笔记(一)
  • .net 程序发生了一个不可捕获的异常
  • .net 微服务 服务保护 自动重试 Polly
  • .NET 中什么样的类是可使用 await 异步等待的?
  • .NET/C# 获取一个正在运行的进程的命令行参数