因为有些函数与SQL语句不是很常用,所以在这里记录一下
函数
CONVERT函数的使用
--转化为日期格式
SELECT CONVERT(VARCHAR, 需要转换的字段, 120) AS 表头
FROM 数据表;
- 101: MM/DD/YYYY
- 102: YYYY.MM.DD
- 103: DD/MM/YYYY
- 104: DD.MM.YYYY
- 105: DD-MM-YYYY
- 106: DD MON YYYY
- 107: Mon DD, YYYY
- 108: HH:MI:SS
COALESCE函数的使用
SELECT
COALESCE(首先取值的字段, 为空后取值的字段或赋值) as 表头
from 数据表
FORMAT函数的使用:
- 将日期格式化为指定的字符串(需要 SQL Server 2012 及以上版本)。
SELECT FORMAT(GETDATE(), 'yyyy-MM-dd HH:mm:ss') AS 表头
DATEDIFF函数的使用:
- 计算两个日期之间的差异。
SELECT DATEDIFF(DAY, '2022-01-01', '2022-02-01') AS 表头
EOMONTH函数的使用:
- 获取月末的日期(需要 SQL Server 2012 及以上版本)。
SELECT EOMONTH(GETDATE()) AS 表头
—————————————————手动分割线————————————————————
语句
多条件赋值
case——when——else——end
select
case
when 条件1 then '赋值1'
when 条件2 then '赋值2'
else '赋值3'
end AS 表头
from 数据表
--好用的例子:
select
SUM(CASE
WHEN
字段 IS NOT NULL AND Bm.LogisticsStatus = 4 THEN 赋值1
ELSE 赋值2
END) as 表头
from 数据表
添加、修改字段
--修改字段类型
ALTER TABLE 数据表名
alter COLUMN 字段名 字段类型;
一个例子:
ALTER TABLE YourTable
alter COLUMN NewColumn varchar(20) null;
--新增字段
ALTER TABLE 数据表名
ADD 字段名 数据类型 NULL
一个例子:
ALTER TABLE YourTable
ADD NewColumn INT DEFAULT 0;
清空表数据
truncate table 表名
事务流程
--开始执行事务
Begin TRANSACTION
--需要执行的SQL语句
update table1 set Name='事务测试' where ID=2
--事务回滚
ROLLBACK TRANSACTION
--提交事务
COMMIT TRANSACTION