[Reprint] convert date formatting in SQL server

Source: Internet
Author: User

CONVERT
Explicitly converts a data type expression to another data type. Because some requirements often use different date formats, the following can be found in
Format the date in SQL Server.

SQL Server supports the data format in the Arabic style using the Kuwait algorithm.

In the table, the two columns on the left represent converting datetime or smalldatetime to the style value of the character data. Add 100 to the style value to obtain the four-digit year (yyyy) of the century ).
Without Century digital (yy) with Century digital (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/French dd/mm/yy
4 104 German dd. mm. yy
5 105 Italian dd-mm-yy
6 106-dd mon yy
7 107-mon dd, yy
8 108-hh: mm: ss
-9 or 109 (*) Default Value + millisecond mon dd yyyy hh: mi: ss: mmmAM (or PM)
10 110 US mm-dd-yy
11 111 yy/mm/dd in Japan
12 112 ISO yymmdd
-13 or 113 (*) European default value + millisecond dd mon yyyy hh: mm: ss: mmm (24 h)
14 114-hh: mi: ss: mmm (24 h)
-20 or 120 (*) ODBC specification yyyy-mm-dd hh: mm: ss [. fff]
-21 or 121 (*) ODBC specifications (in milliseconds) yyyy-mm-dd hh: mm: ss [. fff]
-126 (***) ISO8601 yyyy-mm-dd Thh: mm: ss: mmm (without spaces)
-130 * Kuwait dd mon yyyy hh: mi: ss: mmmAM
-131 * Kuwait dd/mm/yy hh: mi: ss: mmmAM

* The default value (style 0, 100, 9, 109, 13, 113, 20, 120, 21, or 121) always returns century digits (yyyy ).
** Input when converted to datetime; output when converted to character data.
* ** It is specially used for XML. For the conversion from datetime or smalldatetime to character data, the output format is shown in the table. For data conversion from float, money, smallmoney to character, the output is equivalent to style 2. For data conversion from real to character, the output is equivalent to style 1.

Important by default, SQL Server interprets two-digit years based on the end year 2049. That is, the year 49 with two digits is interpreted as 2049, and the year 50 with two digits is interpreted as 1950. Many client applications (such as client applications based on OLE automation objects) Use 2030 as the end year. SQL Server provides a configuration option ("") to change the end year used by SQL Server and process the date in a consistent manner. However, the safest way is to specify a four-digit year.

When converting from smalldatetime to character data, the style that contains seconds or milliseconds will display zero at these locations. When converting from the datetime or smalldatetime value, you can use the appropriate char or varchar data type length to cut off the date part that is not required.

The following table shows the style values when converting from float or real to character data.
Value output
0 (default) is a maximum of six digits. Use scientific notation as needed.
1 is always an 8-bit value. Always use scientific notation.
2 is always a 16-bit value. Always use scientific notation.

In the following table, the left column indicates the style value when converting from money or smallmoney to character data.
Value output
0 (default value) each three digits on the left of the decimal point are not separated by commas. Two digits on the right of the decimal point, for example, 4235.98.
1. Each three digits on the left of the decimal point are separated by commas (,). The two digits on the right of the decimal point, for example, 3,510.92.
2. Each three digits on the left of the decimal point are not separated by commas. Four digits are used on the right of the decimal point, for example, 4235.9819.

Use CONVERT:

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

Select CONVERT (varchar, getdate (), 120)
11:06:08

Select replace (CONVERT (varchar, getdate (), 120 ),\-\,\\),\\,\\),\:\,\\)
20040912110608

Select CONVERT (varchar (12), getdate (), 111)
2004/09/12

Select CONVERT (varchar (12), getdate (), 112)
20040912

Select CONVERT (varchar (12), getdate (), 102)
2004.09.12

Select CONVERT (varchar (12), getdate (), 101)
09/12/2004

Select CONVERT (varchar (12), getdate (), 103)
12/09/2004

Select CONVERT (varchar (12), getdate (), 104)
12.09.2004

Select CONVERT (varchar (12), getdate (), 105)
12-09-2004

Select CONVERT (varchar (12), getdate (), 106)
12 09 2004

Select CONVERT (varchar (12), getdate (), 107)
09 12,200 4

Select CONVERT (varchar (12), getdate (), 108)
11:06:08

Select CONVERT (varchar (12), getdate (), 109)
09 12, 2004 1

Select CONVERT (varchar (12), getdate (), 110)
09-12-2004

Select CONVERT (varchar (12), getdate (), 113)
12 09 2004 1

Select CONVERT (varchar (12), getdate (), 114)
11:06:08. 177

Related Article

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.