SQL Sever 函数常用
--round 四舍五入
select round(convert(DECIMAL(28,4), isnull(yjlcgoodsweight,0)), 4) AS F_DZ from YJLC_GOODSLIST ;--10.0000
select round(0.95,1) as roundTest --将 expression 转换为数据类型 numeric 时出现算术溢出错误。round 四舍五入(要操作的数,)
select round(0.95,-1) as roundTest --0.00
select round(1.6783,1) as roundTest --1.7000
--convert函数 把日期转换为新数据类型的通用函数,
select convert(varchar(100),GETDATE(),120) as dateConvertTest --2020-01-11 09:21:30
--convert函数 显示是不同格式的日期
select convert(SMALLDATETIME,convert(varchar(100),GETDATE(),120)) --2020-01-11 09:33:00
select cast(convert(varchar(100),GETDATE(),120) as SMALLDATETIME) --2020-01-11 09:29:00 SMALLDATETIME 年月日时分
select convert(date,'2020-01-01 00:00:00')--2020-01-01 年月日
---cast函数 cast(expresstion as data_type)
select cast('12345as' as varchar(5))--12345
select cast('123' as int)--123
select cast('123.32'as int)--在将 varchar 值 '123.32' 转换成数据类型 int 时失败。
select cast('123.325' as decimal(18,2))--123.33
--left函数
select left('abcde',3) --abc
--right函数
select right('abcde',3) --cde
--CHAR函数
select CHAR(54)--6
--charindex函数
select charindex('-','12345-abcde')--6
--截取 某字符后面的字符串
select left('12345-abcde',charindex('-','12345-abcde'))--12345-
select left('12345-abcde',charindex('-','12345-abcde')-1)--12345
--month、year、day函数
select month(C_TIME) from YJLC_GOODSLIST --9
--比较大小
SELECT DATEDIFF(day,'2008-12-29','2008-12-30') AS DiffDate--1
更多方法可以参考
https://www.w3school.com.cn/sql/func_datediff.asp