在SQL Server中获取格式化成yyyy-MM-dd的当前日期:
select convert(char(10), getdate(), 120); -- 2019-06-17
首先我们知道getdate()函数是用来获取当前日期的,它返回的类型是datetime类型,格式是yyyy-mm-dd hh:mi:ss:mmm。
select getdate();
然后convert函数可以通过接受三个参数来格式化日期,其中第一个参数是返回类型,第二个参数是日期(datetime),第三个参数是SQL Server预设的日期格式化类型。
通过示例来直观地感受一下不同的格式化类型转换出来的格式化日期是什么样的:
-- 05 9 2019 9:12AM
select convert(varchar(100), getdate(), 0);
-- 05/09/19
select convert(varchar(100), getdate(), 1);
-- 11.05.09
select convert(varchar(100), getdate(), 2);
-- 09/05/19
select convert(varchar(100), getdate(), 3);
-- 09.05.19
select convert(varchar(100), getdate(), 4);
-- 09-05-19
select convert(varchar(100), getdate(), 5);
-- 09 05 19
select convert(varchar(100), getdate(), 6);
-- 05 09, 19
select convert(varchar(100), getdate(), 7);
-- 09:13:14
select convert(varchar(100), getdate(), 8);
-- 05 9 2019 9:13:14:670AM
select convert(varchar(100), getdate(), 9);
-- 05-09-19
select convert(varchar(100), getdate(), 10);
-- 19/05/09
select convert(varchar(100), getdate(), 11);
-- 190509
select convert(varchar(100), getdate(), 12);
-- 09 05 2019 09:13:14:670
select convert(varchar(100), getdate(), 13);
-- 09:13:14:670
select convert(varchar(100), getdate(), 14);
-- 2019-05-09 09:13:14
select convert(varchar(100), getdate(), 20);
-- 2019-05-09 09:13:14.670
select convert(varchar(100), getdate(), 21);
-- 05/09/19 9:15:33 AM
select convert(varchar(100), getdate(), 22);
-- 2019-05-09
select convert(varchar(100), getdate(), 23);
-- 09:15:33
select convert(varchar(100), getdate(), 24);
-- 2019-05-09 09:15:33.140
select convert(varchar(100), getdate(), 25);
-- 05 9 2019 9:15AM
select convert(varchar(100), getdate(), 100);
-- 05/09/2019
select convert(varchar(100), getdate(), 101);
-- 2019.05.09
select convert(varchar(100), getdate(), 102);
-- 09/05/2019
select convert(varchar(100), getdate(), 103);
-- 09.05.2019
select convert(varchar(100), getdate(), 104);
-- 09-05-2019
select convert(varchar(100), getdate(), 105);
-- 09 05 2019
select convert(varchar(100), getdate(), 106);
-- 05 09, 2019
select convert(varchar(100), getdate(), 107);
-- 09:16:38
select convert(varchar(100), getdate(), 108);
-- 05 9 2019 9:16:38:543AM
select convert(varchar(100), getdate(), 109);
-- 05-09-2019
select convert(varchar(100), getdate(), 110);
-- 2019/05/09
select convert(varchar(100), getdate(), 111);
-- 20190509
select convert(varchar(100), getdate(), 112);
-- 09 05 2019 09:17:19:857
select convert(varchar(100), getdate(), 113);
-- 09:17:19:857
select convert(varchar(100), getdate(), 114);
-- 2019-05-09 09:17:19
select convert(varchar(100), getdate(), 120);
-- 2019-05-09 09:17:19.857
select convert(varchar(100), getdate(), 121);
-- 2019-05-09T09:17:19.857
select convert(varchar(100), getdate(), 126);
-- 6 ????? ??????? 1440 9:17:19:857AM
select convert(varchar(100), getdate(), 130);
-- 6/06/1440 9:17:19:857AM
select convert(varchar(100), getdate(), 131);