Code Output format
0 or 100 (default) Mon dd yyyy hh:miAM/PM
1 or 101 mm/dd/yy or mm/dd/yyyy
7 or 107 Mon dd, yy or Mon dd, yyyy
8 or 108 hh:mi:ss
10 or 110 mm-dd-yy or mm-dd-yyyy
12 or 112 yymmdd or yyyymmdd
14 or 114 hh:mi:ss:mmm (24-hour clock)
Common style codes for converting real data to character data
Code Output
0 (default) 6 digits maximum
1 8 digits; must use scientific notation
2 16 digits; must use scientific notation
Common style codes for converting money data to character data
Code Output
0 (default) 2 digits to the right of the decimal point; no commas to the left
1 2 digits to the right of the decimal point; commas to the left
2 4 digits to the right of the decimal point; no commas to the left
A SELECT statement that uses the CONVERT function
33>
34>
35> create table Billings (
36> BankerID INTEGER,
37> BillingNumber INTEGER,
38> BillingDate datetime,
39> BillingTotal INTEGER,
40> TermsID INTEGER,
41> BillingDueDate datetime ,
42> PaymentTotal INTEGER,
43> CreditTotal INTEGER
44>
45> );
46> GO
1>
2> INSERT INTO Billings VALUES (1, 1, '2005-01-22', 165, 1,'2005-04-22',123,321);
3> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (2, 2, '2001-02-21', 165, 1,'2002-02-22',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (3, 3, '2003-05-02', 165, 1,'2005-04-12',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (4, 4, '1999-03-12', 165, 1,'2005-04-18',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (5, 5, '2000-04-23', 165, 1,'2005-04-17',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (6, 6, '2001-06-14', 165, 1,'2005-04-18',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (7, 7, '2002-07-15', 165, 1,'2005-04-19',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (8, 8, '2003-08-16', 165, 1,'2005-04-20',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (9, 9, '2004-09-17', 165, 1,'2005-04-21',123,321);
2> GO
(1 rows affected)
1> INSERT INTO Billings VALUES (0, 0, '2005-10-18', 165, 1,'2005-04-22',123,321);
2> GO
(1 rows affected)
1>
2>
3>
4>
5> SELECT CONVERT(varchar, BillingDate) AS varcharDate,
6> CONVERT(varchar, BillingDate, 1) AS varcharDate_1,
7> CONVERT(varchar, BillingDate, 107) AS varcharDate_107,
8> CONVERT(varchar, BillingTotal) AS varcharTotal,
9> CONVERT(varchar, BillingTotal, 1) AS varcharTotal_1
10> FROM Billings
11> GO
varcharDate varcharDate_1 varcharDate_107 varcharTotal varcharTotal_1
------------------------------ ------------------------------ ------------------------------ ------------------------------ ------------------------------
Jan 22 2005 12:00AM 01/22/05 Jan 22, 2005 165 165
Feb 21 2001 12:00AM 02/21/01 Feb 21, 2001 165 165
May 2 2003 12:00AM 05/02/03 May 02, 2003 165 165
Mar 12 1999 12:00AM 03/12/99 Mar 12, 1999 165 165
Apr 23 2000 12:00AM 04/23/00 Apr 23, 2000 165 165
Jun 14 2001 12:00AM 06/14/01 Jun 14, 2001 165 165
Jul 15 2002 12:00AM 07/15/02 Jul 15, 2002 165 165
Aug 16 2003 12:00AM 08/16/03 Aug 16, 2003 165 165
Sep 17 2004 12:00AM 09/17/04 Sep 17, 2004 165 165
Oct 18 2005 12:00AM 10/18/05 Oct 18, 2005 165 165
(10 rows affected)
1>
2>
3> drop table Billings;
4> GO
13.3.CONVERT |
| 13.3.1. | CONVERT function syntax |
| 13.3.2. | Values for the style argument of the CONVERT function when you convert a datetime expression to a character expression. |
| 13.3.3. | select CONVERT (INTEGER , '123') |
| 13.3.4. | The syntax of the CONVERT function CONVERT(data_type, expression [, style]) |
| 13.3.5. | CONVERT(varchar,BillingDate,100) 'Mmm dd yyyy hh:mmdp' |
| 13.3.6. | CONVERT(varchar,BillingDate,101) 'mm/dd/yyyy' |
| 13.3.7. | CONVERT(varchar,BillingDate,103) 'dd/mm/yyyy' |
| 13.3.8. | CONVERT() function requires two arguments: the first for the target data type and the second for the source value. |
| 13.3.9. | SELECT 'Default Date: ' + CONVERT(VarChar(50), GETDATE(), 100) |
| 13.3.10. | SELECT 'US Date: ' + CONVERT(VarChar(50), GETDATE(), 101) |
| 13.3.11. | SELECT 'ANSI Date: ' + CONVERT(VarChar(50), GETDATE(), 102) |
| 13.3.12. | SELECT 'UK/French Date: ' + CONVERT(VarChar(50), GETDATE(), 103) |
| 13.3.13. | SELECT 'German Date: ' + CONVERT(VarChar(50), GETDATE(), 104) |
| 13.3.14. | SELECT CONVERT(VarChar(50), @Num, 0) |
| 13.3.15. | CONVERT(datetime, '20000704') |
| 13.3.16. | SELECT CONVERT(datetime, '10.12.99',1) |
| 13.3.17. | SELECT CONVERT(datetime, '10.12.99',4) |
| 13.3.18. | CONVERT(char(10), GETDATE(), 112) |
| 13.3.19. | CONVERT(varchar(10), advance, 2) |
| 13.3.20. | CONVERT(varchar(20), GETDATE()) |
| 13.3.21. | The conversion of a char data type to a datetime data type resulted in an out-of-range datetime value. |
| 13.3.22. | CONVERT(char(8), BillingDate, 1) and CONVERT(varchar(9), PaymentTotal, 1) |
| 13.3.23. | Conversion failed when converting the varchar value 'abc' to data type int. |
| 13.3.24. | CONVERT(varchar(12), OrderDate, 5) |
| 13.3.25. | Compare date type value after converting |
| 13.3.26. | Use convert function with variables |