Execute the following Microsoft SQL Server T-SQL datetime and date formatting scripts in Management Studio Query Editor to demonstrate the multitude of temporal data formats available in SQL Server. First we start with the conversion options available for sql datetime formats with century (YYYY or CCYY format). Subtracting 100 from the Style (format) number will transform dates without century (YY). For example Style 103 is with century, Style 3 is without century. The default Style values – Style 0 or 100, 9 or 109, 13 or 113, 20 or 120, and 21 or 121 – always return the century (yyyy) format.
– Microsoft SQL Server T-SQL date and datetime formats – Date time formats – mssql datetime – MSSQL getdate returns current system date and time in standard internal format SELECT convert(varchar, getdate(), 100) – mon dd yyyy hh:mmAM (or PM) – Oct 2 2008 11:01AM SELECT convert(varchar, getdate(), 101) – mm/dd/yyyy - 10/02/2008 SELECT convert(varchar, getdate(), 102) – yyyy.mm.dd – 2008.10.02 SELECT convert(varchar, getdate(), 103) – dd/mm/yyyy SELECT convert(varchar, getdate(), 104) – dd.mm.yyyy SELECT convert(varchar, getdate(), 105) – dd-mm-yyyy SELECT convert(varchar, getdate(), 106) – dd mon yyyy SELECT convert(varchar, getdate(), 107) – mon dd, yyyy SELECT convert(varchar, getdate(), 108) – hh:mm:ss SELECT convert(varchar, getdate(), 109) – mon dd yyyy hh:mm:ss:mmmAM (or PM) – Oct 2 2008 11:02:44:013AM SELECT convert(varchar, getdate(), 110) – mm-dd-yyyy SELECT convert(varchar, getdate(), 111) – yyyy/mm/dd SELECT convert(varchar, getdate(), 112) – yyyymmdd SELECT convert(varchar, getdate(), 113) – dd mon yyyy hh:mm:ss:mmm – 02 Oct 2008 11:02:07:577 SELECT convert(varchar, getdate(), 114) – hh:mm:ss:mmm(24h) SELECT convert(varchar, getdate(), 120) – yyyy-mm-dd hh:mm:ss(24h) SELECT convert(varchar, getdate(), 121) – yyyy-mm-dd hh:mm:ss.mmm SELECT convert(varchar, getdate(), 126) – yyyy-mm-ddThh:mm:ss.mmm – 2008-10-02T10:52:47.513 – SQL create different date styles with t-sql string functions SELECT replace(convert(varchar, getdate(), 111), ‘/’, ‘ ‘) – yyyy mm dd SELECT convert(varchar(7), getdate(), 126) – yyyy-mm SELECT right(convert(varchar, getdate(), 106), 8) – mon yyyy ———— – SQL Server date formatting function – convert datetime to string ———— – SQL datetime functions – SQL Server date formats – T-SQL convert dates – Formatting dates sql server CREATE FUNCTION dbo.fnFormatDate (@Datetime DATETIME, @FormatMask VARCHAR(32)) RETURNS VARCHAR(32) AS BEGIN DECLARE @StringDate VARCHAR(32) SET @StringDate = @FormatMask IF (CHARINDEX (‘YYYY’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘YYYY’, DATENAME(YY, @Datetime)) IF (CHARINDEX (‘YY’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘YY’, RIGHT(DATENAME(YY, @Datetime),2)) IF (CHARINDEX (‘Month’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘Month’, DATENAME(MM, @Datetime)) IF (CHARINDEX (‘MON’,@StringDate COLLATE SQL_Latin1_General_CP1_CS_AS)>0) SET @StringDate = REPLACE(@StringDate, ‘MON’, LEFT(UPPER(DATENAME(MM, @Datetime)),3)) IF (CHARINDEX (‘Mon’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘Mon’, LEFT(DATENAME(MM, @Datetime),3)) IF (CHARINDEX (‘MM’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘MM’, RIGHT(’0′+CONVERT(VARCHAR,DATEPART(MM, @Datetime)),2)) IF (CHARINDEX (‘M’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘M’, CONVERT(VARCHAR,DATEPART(MM, @Datetime))) IF (CHARINDEX (‘DD’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘DD’, RIGHT(’0′+DATENAME(DD, @Datetime),2)) IF (CHARINDEX (‘D’,@StringDate) > 0) SET @StringDate = REPLACE(@StringDate, ‘D’, DATENAME(DD, @Datetime)) RETURN @StringDate END GO
– Microsoft SQL Server date format function test – MSSQL formatting dates SELECT dbo.fnFormatDate (getdate(), ‘MM/DD/YYYY’) – 01/03/2012 SELECT dbo.fnFormatDate (getdate(), ‘DD/MM/YYYY’) – 03/01/2012 SELECT dbo.fnFormatDate (getdate(), ‘M/DD/YYYY’) – 1/03/2012 SELECT dbo.fnFormatDate (getdate(), ‘M/D/YYYY’) – 1/3/2012 SELECT dbo.fnFormatDate (getdate(), ‘M/D/YY’) – 1/3/12 SELECT dbo.fnFormatDate (getdate(), ‘MM/DD/YY’) – 01/03/12 SELECT dbo.fnFormatDate (getdate(), ‘MON DD, YYYY’) – JAN 03, 2012 SELECT dbo.fnFormatDate (getdate(), ‘Mon DD, YYYY’) – Jan 03, 2012 SELECT dbo.fnFormatDate (getdate(), ‘Month DD, YYYY’) – January 03, 2012 SELECT dbo.fnFormatDate (getdate(), ‘YYYY/MM/DD’) – 2012/01/03 SELECT dbo.fnFormatDate (getdate(), ‘YYYYMMDD’) – 20120103 SELECT dbo.fnFormatDate (getdate(), ‘YYYY-MM-DD’) – 2012-01-03 – CURRENT_TIMESTAMP returns current system date and time in standard internal format SELECT dbo.fnFormatDate (CURRENT_TIMESTAMP,‘YY.MM.DD’) – 12.01.03 GO ————
/***** SELECTED SQL DATE/DATETIME FORMATS WITH NAMES *****/
– SQL format datetime – Default format: Oct 23 2006 10:40AM SELECT [Default]=CONVERT(varchar,GETDATE(),100)
– US-Style format: 10/23/2006 SELECT [US-Style]=CONVERT(char,GETDATE(),101)
– ANSI format: 2006.10.23 SELECT [ANSI]=CONVERT(char,CURRENT_TIMESTAMP,102)
– UK-Style format: 23/10/2006 SELECT [UK-Style]=CONVERT(char,GETDATE(),103)
– German format: 23.10.2006 SELECT [German]=CONVERT(varchar,GETDATE(),104)
– ISO format: 20061023 SELECT ISO=CONVERT(varchar,GETDATE(),112)
– ISO8601 format: 2008-10-23T19:20:16.003 SELECT [ISO8601]=CONVERT(varchar,GETDATE(),126) ————
– SQL Server datetime formats – Century date format MM/DD/YYYY usage in a query – Format dates SQL Server 2005 SELECT TOP (1) SalesOrderID, OrderDate = CONVERT(char(10), OrderDate, 101), OrderDateTime = OrderDate FROM AdventureWorks.Sales.SalesOrderHeader /* Result
SalesOrderID OrderDate OrderDateTime 43697 07/01/2001 2001-07-01 00:00:00.000 */
– SQL update datetime column – SQL datetime DATEADD UPDATE Production.Product SET ModifiedDate=DATEADD(dd,1, ModifiedDate) WHERE ProductID = 1001
– MM/DD/YY date format – Datetime format sql SELECT TOP (1) SalesOrderID, OrderDate = CONVERT(varchar(8), OrderDate, 1), OrderDateTime = OrderDate FROM AdventureWorks.Sales.SalesOrderHeader ORDER BY SalesOrderID desc /* Result
SalesOrderID OrderDate OrderDateTime 75123 07/31/04 2004-07-31 00:00:00.000 */
– Combining different style formats for date & time – Datetime formats – Datetime formats sql DECLARE @Date DATETIME SET @Date = ’2015-12-22 03:51 PM’ SELECT CONVERT(CHAR(10),@Date,110) + SUBSTRING(CONVERT(varchar,@Date,0),12,8) – Result: 12-22-2015 3:51PM
– Microsoft SQL Server cast datetime to string SELECT stringDateTime=CAST (getdate() as varchar) – Result: Dec 29 2012 3:47AM ———— – SQL Server date and time functions overview ———— – SQL Server CURRENT_TIMESTAMP function – SQL Server datetime functions – local NYC – EST – Eastern Standard Time zone – SQL DATEADD function – SQL DATEDIFF function SELECT CURRENT_TIMESTAMP – 2012-01-05 07:02:10.577 – SQL Server DATEADD function SELECT DATEADD(month,2,’2012-12-09′) – 2013-02-09 00:00:00.000 – SQL Server DATEDIFF function SELECT DATEDIFF(day,’2012-12-09′,’2013-02-09′) – 62 – SQL Server DATENAME function SELECT DATENAME(month, ’2012-12-09′) – December SELECT DATENAME(weekday, ’2012-12-09′) – Sunday – SQL Server DATEPART function SELECT DATEPART(month, ’2012-12-09′) – 12 – SQL Server DAY function SELECT DAY(’2012-12-09′
手机版|BC Morning Website
( Best Deal Inc. 001 )
GMT-8, 2025-7-8 11:42
, Processed in 0.014283 second(s), 18 queries
.
Supported by Best Deal Online X3.5 © 2001-2025 Discuz! Team. |