SQL Date-time format conversion

Source: Internet
Author: User
Tags getdate string format

Use convert in SQL server2000 to get the datetime data type style (full)

Processing of date data formats, two examples:

CONVERT (varchar (16), time one, 20) results: 2007-02-01 08:02/* time is generally a field in the GETDATE () function or data table */

CONVERT (varchar (10), time one, 23) Result: 2007-02-01/*varchar (10) represents the format of the date output, which can occur if not long enough */


statements and query results:
Select CONVERT (varchar), GETDATE (), 0): 2006 10:57am
Select CONVERT (varchar), GETDATE (), 1): 05/16/06
Select CONVERT (varchar), GETDATE (), 2): 06.05.16
Select CONVERT (varchar), GETDATE (), 3): 16/05/06
Select CONVERT (varchar), GETDATE (), 4): 16.05.06
Select CONVERT (varchar), GETDATE (), 5): 16-05-06
Select CONVERT (varchar), GETDATE (), 6):
Select CONVERT (varchar), GETDATE (), 7):,
Select CONVERT (varchar), GETDATE (), 8): 10:57:46
Select CONVERT (varchar), GETDATE (), 9): 2006 10:57:46:827am
Select CONVERT (varchar), GETDATE (), ten): 05-16-06
Select CONVERT (varchar), GETDATE (), one): 06/05/16
Select CONVERT (varchar), GETDATE (), (+): 060516
Select CONVERT (varchar), GETDATE (): 2006 10:57:46:937
Select CONVERT (varchar), GETDATE (), +): 10:57:46:967
Select CONVERT (varchar), GETDATE (): 2006-05-16 10:57:47
Select CONVERT (varchar), GETDATE (), (+): 2006-05-16 10:57:47.157
Select CONVERT (varchar), GETDATE (): 05/16/06 10:57:47 AM
Select CONVERT (varchar), GETDATE (), max): 2006-05-16
Select CONVERT (varchar), GETDATE (): 10:57:47
Select CONVERT (varchar), GETDATE (), (+): 2006-05-16 10:57:47.250
Select CONVERT (varchar), GETDATE (), (+): 2006 10:57am
Select CONVERT (varchar), GETDATE (), 101): 05/16/2006
Select CONVERT (varchar), GETDATE (), 102): 2006.05.16
Select CONVERT (varchar), GETDATE (), 103): 16/05/2006
Select CONVERT (varchar), GETDATE (), 104): 16.05.2006
Select CONVERT (varchar), GETDATE (), max.: 16-05-2006
Select CONVERT (varchar), GETDATE (), 106): 2006
Select CONVERT (varchar), GETDATE (), 107): 2006
Select CONVERT (varchar), GETDATE (), 108): 10:57:49
Select CONVERT (varchar), GETDATE (), 109): 2006 10:57:49:437am
Select CONVERT (varchar), GETDATE (), (+): 05-16-2006
Select CONVERT (varchar), GETDATE (), 111): 2006/05/16
Select CONVERT (varchar), GETDATE (), 20060516):
Select CONVERT (varchar), GETDATE (), 113): 2006 10:57:49:513
Select CONVERT (varchar), GETDATE (), (): 10:57:49:547
Select CONVERT (varchar), GETDATE (), (+): 2006-05-16 10:57:49
Select CONVERT (varchar), GETDATE (), 121): 2006-05-16 10:57:49.700
Select CONVERT (varchar), GETDATE (), 126): 2006-05-16t10:57:49.827
Select CONVERT (varchar), GETDATE (), ():?????????? 1427 10:57:49:907am
Select CONVERT (varchar), GETDATE (), 131): 18/04/1427 10:57:49:920am

Description:
using CONVERT:

CONVERT (data_type [(length)], expression [, style])

Parameters
expression

is any valid microsoft®sql Server™ expression:

data_type

The data types provided by the target system, including bigint and sql_variant. You cannot use a user-defined data type.
length

Optional parameters for nchar, nvarchar, char, varchar, binary, or varbinary data types.

style

A date format style whereby DateTime or smalldatetime data is converted to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data type), or a string format style, whereby Float, real, money, or smallmoney data is converted to character data (nchar, nvarchar, char, varchar, nchar, or nvarchar data types).

SQL Server supports data formats in Arabian styles using the Kuwaiti algorithm.

in the table, the two columns on the left represent the style values that convert datetime or smalldatetime to character data. Add 100 to the style value to get a four-bit year (yyyy) that includes century digits.

century digits (yy) with century digits (yyyy)
Standard
Input/output * *
-0 or 100 (*) default value mon dd yyyy hh:miam (or PM)
1 101 US mm/dd/yyyy
2 102 ANSI yy.mm.dd
3 103 UK/France Dd/mm/yy
4 104 German Dd.mm.yy
5 105 Italy Dd-mm-yy
6 106-dd Mon yy
7 107-mon dd, yy
8 108-hh:mm:ss
-9 or 109 (*) Default value + MS Mon dd yyyy hh:mi:ss:mmmAM (or PM)
10 110 US Mm-dd-yy
11 111 Japan YY/MM/DD
ISO YYMMDD
-13 or 113 (*) European default + MS DD Mon yyyy hh:mm:ss:mmm (24h)
114-hh:mi:ss:mmm (24h)
-20 or (*) ODBC specification Yyyy-mm-dd HH:MM:SS[.FFF]
-21 or 121 (*) ODBC specification (with milliseconds) Yyyy-mm-dd Hh:mm:ss[.fff]
-126 (* *) ISO8601 yyyy-mm-dd Thh:mm:ss.mmm (excluding spaces)
-130* hijri**** dd Mon yyyy hh:mi:ss:mmmAM
-131* hijri**** dd/mm/yy Hh:mi:ss:mmmAM


* The default value (style 0 or 100, 9 or 109, 13 or 113, 20 or 120, 21, or 121) always returns century digits (yyyy).
* * input when converting to datetime, and output when converting to character data.
* * * specifically for XML. For conversions from DateTime or smalldatetime to character data, the output format is shown in the table. For conversions from float, money, or smallmoney to character data, the output is equivalent to style 2. For conversions from Real to character data, the output is equivalent to style 1.
****hijri is a calendar system with several forms of change, Microsoft®sql server™2000 uses the Kuwaiti algorithm.



important By default, SQL Server interprets two-digit years based on the cutoff year 2049. That is, the two-digit year 49 is interpreted as 2049, and the two-digit year 50 is interpreted as 1950. Many client applications, such as those based on OLE automation objects, use 2030 as the cutoff year. SQL Server provides a configuration option ("Two-digit cutoff year") to change the cutoff year used by SQL Server and to make the dates consistent. However, the safest option is to specify a four-digit year.


When converting from smalldatetime to character data, styles containing seconds or milliseconds will display zeros at these locations. When converting from a datetime or smalldatetime value, you can truncate the unwanted date part by using the appropriate char or varchar data type length.

SQL Date-time format conversion

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.