数学函数和系统函数

Posted on   夜雨初凉  阅读(106)  评论(0编辑  收藏  举报

☆数学函数:

函数 用法
abs(n) 绝对值
ceiling(n) (天花板) 返回大于或等于参数的最小整数,向上取整
floor(num) 地板 - 返回小于或等于参数的最大整数,向下取整
round(num,小数精度位数) 返回四舍五入的数字
rand() 随机数0-1,返回从0到1之间的随机float值
power(a,b) a的b次方

示例:

--abs():绝对值
   select abs(-56)  --56
   select abs(56)  --56

--ceiling(num):天花板 - 返回大于或等于参数的最小整数
   select ceiling(52.64) --53
   select ceiling(51.01) --52
   select ceiling(-25.45)-- -25
--ceiling(num):向上取整

--floor(num):地板 - 返回小于或等于参数的最大整数
   select floor(52.64) -- 52
   select floor(51.01) -- 51
   select floor(-25.45)--  -26
--floor(num):向下取整

--round(num,小数精度位数):返回四舍五入的数字	
   select round(51.62,0) --52.00
   select round(51.62,1) --51.60
   select round(51.02,1) --51.00
   select round(51.0210086,2)--51.0200000 

--rand():随机数0-1   
--返回从0到1之间的随机float值。
   select rand() 	--数字不重复
--select rand(n)	--固定数字
   select rand(1)
   
--power(a,b):a的b次方
select power(2,3)--2*2*2=8
select POWER(4,3)--4*4*4=64

☆系统函数:

类型转换:

1.convert(类型,要转换的值)
2.cast(要转换的值 as 类型)

cast(stuage as varchar)
convert(varchar,stuage)

注:
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)相互转换的时候才用到.

示例:

select '字符串'+10086 --报错

--在将 varchar 值 '字符串' 转换成数据类型 int 时失败。
--需要把int转换成字符串varchar

select '字符串'+convert(varchar(10),10086)--字符串10086
select '字符串'+convert(varchar(5),10086)--字符串10086
select '字符串'+convert(varchar(4),10086)--字符串*
select '字符串'+convert(varchar,10086)--字符串10086

select '字符串'+CAST(10086 as varchar)


select '今天的日期是' + getdate()--报错
--从字符串向 datetime 转换时失败。

--print --打印		日期->字符串 
print '今天的日期是' + convert(char,getdate())

日期函数可以指定转换格式 :

convert(数据类型,日期,格式数字)

select convert(varchar(20),getdate(),110)--mm-dd-yyyy
select convert(varchar(20),getdate(),101)--mm/dd/yyyy

格式数字:

格式数字 格式
101 mm/dd/yyyy
110 mm-dd-yyyy
100 或者 0 mon dd yyyy hh:miAM (或者 PM)
101 mm/dd/yy
102 yy.mm.dd
103 dd/mm/yy
104 dd.mm.yy
105 dd-mm-yy
106 dd mon yy
107 Mon dd, yy
108 hh:mm:ss
109 或者 9 mon dd yyyy hh:mi:ss:mmmAM(或者 PM)
110 mm-dd-yy
111 yyyy/mm/dd
112 yyyymmdd
113 或者 13 dd mon yyyy hh:mm:ss:mmm(24h)
114 hh:mi:ss:mmm(24h)
120 或者 20 yyyy-mm-dd hh:mi:ss(24h)
121 或者 21 yyyy-mm-dd hh:mi:ss.mmm(24h)
126 yyyy-mm-ddThh:mm:ss.mmm(没有空格)
130 dd mon yyyy hh:mi:ss:mmmAM
131 dd/mm/yy hh:mi:ss:mmmAM
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

随笔 - 51, 文章 - 0, 评论 - 0, 阅读 - 10758

Copyright © 2025 夜雨初凉
Powered by .NET 9.0 on Kubernetes

点击右上角即可分享
微信分享提示