CONVERT的使用方法:
格式:
CONVERT(data_type,expression[,style])
说明:
此样式一般在时间类型(datetime,smalldatetime)与字符串类型(nchar,nvarchar,char,varchar)
相互转换的时候才用到.
例子:
Select CONVERT(varchar(30),getdate(),101) now
结果为
now
---------------------------------------
style数字在转换时间时的含义如下
---------------------------------------------------------------
Style(2位表示年份) Style(4位表示年份) 输入输出格式
---------------------------------------------------------------
- 0 or 100 mon dd yyyy hh:miAM(或PM)
---------------------------------------------------------------
1 101 mm/dd/yy
----------------------------------------------------------------
-----------------------------
2 102 yy-mm-dd
------------------------------------------------------------------
3 103 dd/mm/yy
-------------
-------------------------------------------------------------------
4 104 dd-mm-yy
-------------------------------------------------------------------
5 105 dd-mm-yy
-------------------------------------------------------------------
6 106 dd mon yy
-------------------------------------------------------------------
7 107 mon dd,yy
----------------------------------------------------------------------
8 108 hh:mm:ss
----------------------------------------------------------------------
- 9 or 109 mon dd yyyy hh:mi:ss:mmmmAM(或PM)
----------------------------------------------------------------------
10 110 mm-dd-yy
-----------------------------------------------------------------------
11 111 yy/mm/dd
----------------------------------------------------------------------
12 112 yymmdd
-----------------------------------------------------------------------
- 13 or 113 dd mon yyyy hh:mi:ss:mmm(24小时制)
-----------------------------------------------------------------------
14 114 hh:mi:ss:mmm(24小时制)
------------------------------------------------------------------------
- 20 or 120 yyyy-mm-dd hh:mi:ss(24小时制)
-------------------------------------------------------------------------
- 21 or 121 yyyy-mm-dd hh:mi:ss:mmm(24小时制)
sql server 自身是支持各种日期格式的:
select CONVERT(varchar,getdate(),120)
--2009-03-15 15:10:02
-------------------------------------------------------------------------
select CONVERT(varchar(10),getdate(),120)
--2009-03-15
-------------------------------------------------------------------------
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
--20090315151201
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 111)
--2009/03/15
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 112)
--20090315
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 102)
--2009.03.15
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 108)
--15:13:26
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 101 )
--03/15/2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 103 )
--15/03/2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 104 )
--15.03.2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 105 )
--15-03-2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 106 )
--15 03 2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 107 )
-- 15, 2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 109 )
--03 15 2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 110 )
--03-15-2009
-------------------------------------------------------------------------
select CONVERT(varchar(11) , getdate(), 113 )
--15 03 2009
-------------------------------------------------------------------------
select CONVERT(varchar(12) , getdate(), 114)
--15:15:55:717
-------------------------------------------------------------------------
例子:
查询指定日期的库存记录,strDate 为指定的日期值,出库时间为datetime类型的字段(SQL Server数据库中)
select * from 出库信息 where (CONVERT(char(10), '" + strDate + "', 120) = CONVERT(char(10), 出库时间, 120))