如何将dd/mm/yyyy
转换为yyyy/mm/dd
。有时SQL Server会每天更改月份。日期格式dd/mm/yyyy至yyyy/mm/dd
例如:02/12/2014(dd/mm/yyyy)
到2014/02/12(yyyy/dd/mm)
但正确的是2014/12/02(yyyy/mm/dd)
。
如何将dd/mm/yyyy
转换为yyyy/mm/dd
。有时SQL Server会每天更改月份。日期格式dd/mm/yyyy至yyyy/mm/dd
例如:02/12/2014(dd/mm/yyyy)
到2014/02/12(yyyy/dd/mm)
但正确的是2014/12/02(yyyy/mm/dd)
。
如果你想指定的日期,你需要将其转换(有点烦)
对于为yyyy/mm/dd格式使用
convert(varchar, getdate(), 111)
,你可以看到一个很好的列表格式这里的不同格式类型 https://anubhavg.wordpress.com/2009/06/11/how-to-format-datetime-date-in-sql-server-2005/
您可以使用下面 -
SELECT CONVERT(NVARCHAR(10),<yourdate>,103)
- 为dd/mm/yyyy
SELECT CONVERT(NVARCHAR(10),<yourdate>,111)
- 为yyyy/mm/dd
我会去这样的:
如果你存储您的日期作为字符串(这是不推荐)
DECLARE @Date VARCHAR(10) = '02/12/2014';
SELECT CONVERT(VARCHAR(10), CONVERT(DATE, @Date, 103), 111);
DATE
如果你存储你的日期为date
SELECT CONVERT(VARCHAR(10), @Date, 111);
输出:
2014/12/02
愿意,如果可能的话,只使用正确的时间类型(如'date', 'time','datetime2'在SQL Server中,不管你的应用程序语言是什么类型)。这些不包含*格式。理想情况下,您尽可能接近用户输入来解析字符串,并尽可能在UI展示中尽可能将其转换回字符串。其他任何人,*避免*字符串,并让语言绑定处理类型之间的转换。 –