將sqlserver中table表的[datetime]字段值'2011-11-07 16:41:35.033' 改為'2011-11-07 00:00:00'去除了時分秒.[datetime]字段要為datetime字段型式的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, 2004
- -------------------------------------------------- ---------
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
---------------------------- --------------------------------
declare @dateTime DateTime--定義一個datetime的變數
set @dateTime =getdate(); --取得系統目前時間,並賦值給@dateTime欄位
--短日期格式:yyyy-m-d
SELECT REPLACE(CONVERT(varchar(10),@dateTime,120),NNN 0','-')
--長日期格式:yyyy年mm月dd日
SELECT STUFF(STUFF(CONVERT(char(8),@dateTime,112),5,0,N'年') ,8,0,N'月')+N'日'
--長日期格式:yyyy年m月d日
SELECT DATENAME(Year,@dateTime)+N'年'+CAST(DATEPART(Month ,@dateTime) AS varchar)+N'月'+DATENAME(Day,@dateTime)+N'日'
--完整日期+時間格式:yyyy-mm-dd hh:mi:ss:mmm
SELECT CONVERT(char(11),@dateTime,120)+CONVERT(char(12),@dateTime,114)
----------------------- -------------------------------------------------- -----------------------
2、日期推算處理
DECLARE @dt datetime
SET @dt=GETDATE()
DECLARE int
SET @number=3
--1.指定日期該年的第一天或最後一天
--A. 年的第一天
SELECT,12120,207( )+'1-1'
--B. 年的最後一天
SELECT CONVERT(char(5),@dt,120)+'12-31'
--2.指定日期所在的季度第一天或最後一天
--A. 季度的第一天
SELECT CONVERT(datetime,CONVERT(char(8),DATEADD(Month,DATEPART(Quarter,@dt)*3-Month(@dt)-3-Month(@dt)*3-Month(@dt)*3-Month(@dt)*3-Month(@dt)*3-Month(@dt)*3-Month(@dt) 2,@dt),120)+'1')
--B. 季度的最後一天(CASE判斷法)
SELECT CONVERT(datetime,CONVERT(char(8),DATEADD(Month,DATEPART(Quarter,PART(Quarter), @dt)*3-Month(@dt),@dt),120)
+CASE WHEN DATEPART(Quarter,@dt) in(1,4)
THEN '31'ELSE '30' END)
THEN '31'ELSE '30' END)『 --C. 季度的最後一天(直接推演算法)
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,1+DATEPART(Quarter,@dt)*3-Month(@dt ),@dt),120)+'1')
--3.指定日期所在月份的第一天或最後一天
--A. 月的第一天
SELECT CONVERT(date,CONVERVERTT(T) char(8),@dt,120)+'1')
--B. 月的最後一天
SELECT DATEADD(Day,-1,CONVERT(char(8),DATEADD(Month,11,@dt ),120)+'1')
--C. 月的最後一天(容易使用的錯誤方法)
SELECT DATEADD(Month,1,DATEADD(Day,-DAY(@dt),@dt))
--4.指定日期所在週的任一天
SELECT DATEADD(Day,@number-DATEPART(Weekday,@dt),@dt)
--5.指定日期所在日期的任意星期
--A. 星期日做為一週的第1天
SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-1)%7,@dt)
🀎B.星期一做一週的第1天 SELECT DATEADD(Day,@number-(DATEPART(Weekday,@dt)+@@DATEFIRST-2)%7-1,@dt)