SqlServer实用语法集合
数据类型转换
--cast(@data as int) @data是变量 int是需要转换成为的类型 例如:
select cast(1234 as char(4))
-- 结果: '1234' int变成字符串
日期转换
-- CONVERT(date,'20201212',112) 第一个的参数是转换成为的类型,第二个参数是变量
select CONVERT(date,'20201212',112) --字符串转日期
-- 结果: 返回日期类型的数据 2020-12-12
select CONVERT(char(8),@date,112) --日期转字符串
-- 结果: 返回字符串,格式根据112设定为:yyyymmdd
日期计算
--计算两天相差几天
datediff(day,@date1,@date2)
-- 结果: 返回int数据 ,结果是 @date2 - @date1的天数差值
本年本月第一天最后一天
select dateadd(month, datediff(month, 0, getdate()), 0) -- 本月第一天
select dateadd(month, datediff(month, 0, dateadd(month, 1, getdate())), -1) -- 本月最后一天
select dateadd(year, datediff(year, 0, getdate()), 0) -- 本年第一天
select dateadd(year, datediff(year, 0, dateadd(year, 1, getdate())), -1) -- 本年最后一天
本年天数
select datediff(day, dateadd(year,datediff(year,0,getdate()),0) ,dateadd(year, 1, dateadd(year,datediff(year,0,getdate()),0)))
-- 或者计算闰年也行
本月天数
select datediff(day, dateadd(month,datediff(month,0,getdate()),0) ,dateadd(month, 1, dateadd(month,datediff(month,0,getdate()),0)))
重新对自增ID进行排序
DBCC CHECKIDENT('table_name',RESEED,重置的ID号)
--例 将表'table_name'的自增id需要重置到10,即下一条新数据的id为11
DBCC CHECKIDENT('table_name',RESEED,10)
--查看当前id序号
DBCC CHECKIDENT('table_name')

浙公网安备 33010602011771号