SQL转换dd / mm / yy到yymmdd

时间:2015-12-10 11:52:30

标签: sql date

我一直在努力实现这一目标,我已经遵循了许多教程并且似乎无法破解它,我一直在尝试这样的事情:

select CONVERT(VARCHAR(10), DATE, 131) from Table

但它似乎没有改变任何东西。

任何建议或帮助将不胜感激。谢谢你提前。

6 个答案:

答案 0 :(得分:5)

SELECT CONVERT(VARCHAR(10), DATE, 12)

12是您想要的格式的正确代码。请参阅:https://msdn.microsoft.com/en-GB/library/ms187928.aspx

答案 1 :(得分:2)

试试这个

declare @TDATE Date = '2015-11-10';
select Convert(varchar,Datepart(Year, @TDATE))+Convert(varchar,Datepart(Month, @TDATE))+Convert(varchar,Datepart(Day, @TDATE))

输出:

20151110

答案 2 :(得分:0)

12是正确的代码。使用以下查询将输出设为'yymmdd'

从表

中选择CONVERT(VARCHAR(10),DATE,12)

答案 3 :(得分:0)

在PostgreSQL上,最简单的方法是使用to_char

to_char(date, 'yyyymmdd')::int

答案 4 :(得分:0)

一种方法是从日期部分构造值。这是一个数字转换:

select (year(date) % 100) * 10000) + month(date) * 100 + day(date)

很容易将其转换为数字:

select cast( (year(date) % 100) * 10000) + month(date) * 100 + day(date) as varchar(10))

与使用convert相比,这种方法的一个小优点是,人类可以理解逻辑而无需仔细阅读特定于SQL Server的神秘文档。我不知道为什么SQL Server不支持类似于大多数其他数据库(和编程语言)的简单格式类型函数。

答案 5 :(得分:0)

select date_format(column_name, '%Y%m%d') from table_name;