① sql如何取得當前日期
getdate //獲得系統當前日期
datepart //獲取日期指定部分(年月日時分表)
getdate()函數:取得系統當前的日期和時間。返回值為datetime類型的。
用法:getdate()
使用時間和日期的函數
getdate():獲取系統當前時間
dateadd(datepart,number,date):計算在一個時間的基礎上增加一個時間後的新時間值,比如:dateadd(yy,30,getdate())
datediff(datepart,startdate,enddate):計算兩個時間的差值,比如:datediff(yy,getdate(),'2008-08-08')
dataname(datepart,date):獲取時間不同部分的值,返回值為字元串
datepart(datepart,date):和datename相似,只是返回值為整型
day(date):獲取指定時間的天數
month(date):獲取指定時間的月份
year(date):獲取指定時間的年份
看以上具體參數
資料庫段有一項為time欄位,類型為日期/時間,我有以下SQL語句取系統當前時間插入:
select replace(replace(replace(CONVERT(varchar, getdate(), 120 ),'-',''),' ',''),':','')
② 在sql中怎樣截取時間
在sql中怎樣截取時間?
把日期截取為月份有以下幾種辦法:
1、日期為日期格式,這種最簡單,使用Month()函數即可獲取月份,如:
1
select month(getdate()) from al
2、日期為yyyy-mm-dd格式的文本,這種情況下需要轉換成日期格式再截取,如:
1
select TO_CHAR(to_date('2013-01-01', 'yyyy-MM-dd'), 'yyyyMM') dateStr from al
3、日期格式為其他格式,如yyyymmdd或yyyy/mm/dd的,此類格式類似第二種格式可以用類似的語句進行查詢,只是轉換成日期的時候的格式不一樣。
註:以上SQL均基於ORACLE資料庫
③ SQL獲取日期的所有格式
在SQL Server里有個getdate()的函數是用來獲取日期的,不過精確到秒,比如查詢select getdate();
出來的結果為2009-02-26 15:57:35.357,一般用的比較多的是只獲取日期,並不需要時間,這時候就需要用到convert函數了。
在函數CONVERT()中你可以使用許多種不同風格的日期和時間格式。下表顯示了所有的格式。
日期和時間的類型:
類型值 標准 輸出
0 Default mon dd yyyy hh:miAM
1 USA mm/dd/yy
2 ANSI yy.mm.dd
3 British/French dd/mm/yy
4 German dd.mm.yy
5 Italian dd-mm-yy
6 - dd mon yy
7 - mon dd,yy
8 - hh:mi:ss
9 Default + milliseconds--mon dd yyyy hh:mi:ss:mmmAM(or )
10 USA mm-dd-yy
11 JAPAN yy/mm/dd
12 ISO yymmdd
13 Europe Default + milliseconds--dd mon yyyy
hh:mi:ss:mmm(24h)
14 - hh:mi:ss:mmm(24h)
類型0,9,和13總是返回四位的年。對其它類型,要顯示世紀,把style值加上100。類型13和14返回24小時時鍾的時間。類型0,7,和13返回的月份用三位字元表示(用Nov代表November).
對表中所列的每一種格式,你可以把類型值加上100來顯示有世紀的年(例如,00年將顯示為2000年)。例如,要按日本標准顯示日期,包括世紀,你應使用如下的語句:
SELECT CONVERT(VARCHAR(30),GETDATE(),111)
在這個例子中,函數CONVERT()把日期格式進行轉換,顯示為1997/11/30
方法:
select convert(varchar(8),getdate(),112)
--------
20090226
select convert(varchar(10),getdate(),120)
-----------
2009-02-26
補充:
1、這里的varchar(10),指的是獲取的字元段的個數,比如原本是2009-02-26 15:57:35.357,為了只獲取2009-02-26欄位,算了下,一共10個字元,所以選擇varchar(10),又比如為varchar(7),則為2009-02。
2、convert(varchar(10),getdate(),120)里的120是顯示日期的格式。
用 replace('2007053019:10:00',':','');替換:號
④ sql server 怎麼獲取當前的年月日
以下是所有的日期格式,按你要求應該用
Select CONVERT(varchar(100), GETDATE(), 23)
就可以了
Select CONVERT(varchar(100), GETDATE(), 0): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 1): 05/16/06
Select CONVERT(varchar(100), GETDATE(), 2): 06.05.16
Select CONVERT(varchar(100), GETDATE(), 3): 16/05/06
Select CONVERT(varchar(100), GETDATE(), 4): 16.05.06
Select CONVERT(varchar(100), GETDATE(), 5): 16-05-06
Select CONVERT(varchar(100), GETDATE(), 6): 16 05 06
Select CONVERT(varchar(100), GETDATE(), 7): 05 16, 06
Select CONVERT(varchar(100), GETDATE(), 8): 10:57:46
Select CONVERT(varchar(100), GETDATE(), 9): 05 16 2006 10:57:46:827AM
Select CONVERT(varchar(100), GETDATE(), 10): 05-16-06
Select CONVERT(varchar(100), GETDATE(), 11): 06/05/16
Select CONVERT(varchar(100), GETDATE(), 12): 060516
Select CONVERT(varchar(100), GETDATE(), 13): 16 05 2006 10:57:46:937
Select CONVERT(varchar(100), GETDATE(), 14): 10:57:46:967
Select CONVERT(varchar(100), GETDATE(), 20): 2006-05-16 10:57:47
Select CONVERT(varchar(100), GETDATE(), 21): 2006-05-16 10:57:47.157
Select CONVERT(varchar(100), GETDATE(), 22): 05/16/06 10:57:47 AM
Select CONVERT(varchar(100), GETDATE(), 23): 2006-05-16
Select CONVERT(varchar(100), GETDATE(), 24): 10:57:47
Select CONVERT(varchar(100), GETDATE(), 25): 2006-05-16 10:57:47.250
Select CONVERT(varchar(100), GETDATE(), 100): 05 16 2006 10:57AM
Select CONVERT(varchar(100), GETDATE(), 101): 05/16/2006
Select CONVERT(varchar(100), GETDATE(), 102): 2006.05.16
Select CONVERT(varchar(100), GETDATE(), 103): 16/05/2006
Select CONVERT(varchar(100), GETDATE(), 104): 16.05.2006
Select CONVERT(varchar(100), GETDATE(), 105): 16-05-2006
Select CONVERT(varchar(100), GETDATE(), 106): 16 05 2006
Select CONVERT(varchar(100), GETDATE(), 107): 05 16, 2006
Select CONVERT(varchar(100), GETDATE(), 108): 10:57:49
Select CONVERT(varchar(100), GETDATE(), 109): 05 16 2006 10:57:49:437AM
Select CONVERT(varchar(100), GETDATE(), 110): 05-16-2006
Select CONVERT(varchar(100), GETDATE(), 111): 2006/05/16
Select CONVERT(varchar(100), GETDATE(), 112): 20060516
Select CONVERT(varchar(100), GETDATE(), 113): 16 05 2006 10:57:49:513
Select CONVERT(varchar(100), GETDATE(), 114): 10:57:49:547
Select CONVERT(varchar(100), GETDATE(), 120): 2006-05-16 10:57:49
Select CONVERT(varchar(100), GETDATE(), 121): 2006-05-16 10:57:49.700
Select CONVERT(varchar(100), GETDATE(), 126): 2006-05-16T10:57:49.827
Select CONVERT(varchar(100), GETDATE(), 130): 18 ???? ?????? 1427 10:57:49:907AM
Select CONVERT(varchar(100), GETDATE(), 131): 18/04/1427 10:57:49:920AM
⑤ SQL獲取時間
這個表裡面有一個欄位是日期時間是吧,時間格式如何?標准嗎?
如果是的話就比較簡單,你看看下面這樣寫行不行(後面幾個2008-10-10可以隨便用一個日期):
select * from 表名 where CONVERT(datetime, 時間欄位)>CONVERT(datetime, '2008-08-10')
and CONVERT(datetime, 時間欄位)<CONVERT(datetime, '2008-10-10') and
CONVERT(datetime,'2008-10-10'+' '+CONVERT(varchar,CONVERT(datetime, 時間欄位),108))>CONVERT(datetime,'2008-10-10 9:00:00.000')
and CONVERT(datetime,'2008-10-10'+' '+CONVERT(varchar,CONVERT(datetime, 時間欄位),108))<CONVERT(datetime,'2008-10-10 12:00:00.000')
⑥ sql 獲取日期的年月日
select convert(CHAR(10),GETDATE(),120)
⑦ SQL語句獲取日期的月份
下面以SQL Server資料庫為例,可以用自帶函數MONTH獲取,sql語句如下:
select MONTH(時間列名) as month from 表名
步驟:
1、創建test1表,並賦值。
獲取到年份為「2008」。
⑧ sql 怎麼獲取系統時間
sql讀取系統日期和時間的方法如下:
--獲取當前日期(如:yyyymmdd)
select CONVERT (nvarchar(12),GETDATE(),112)
--獲取當前日期(如:yyyymmdd hh:MM:ss)
select GETDATE()
--獲取當前日期(如:yyyy-mm-dd)
Select Datename(year,GetDate())+'-'+Datename(month,GetDate())+'-'+Datename(day,GetDate())
--獲取當前日期(如:yyyy/mm/dd)
select DATENAME(YEAR,GETDATE())+'/'+DATENAME(MONTH,GETDATE())+'/'+DATENAME(DAY,GETDATE())
--獲取幾種日期
select DATENAME(YEAR,GETDATE()) --年份(YYYY)
select DATENAME(YY,GETDATE())
select DATENAME(MM,GETDATE()) --月份
select DATENAME(DD,GETDATE()) --日期
select dateName(hh,getdate()) --獲取小時
select DATENAME(MI,GETDATE()) --獲取分鍾
select DATENAME(SECOND,GETDATE()) --獲取秒
select DATENAME(WEEK,GETDATE()) --獲取當前星期(周)是這一年中的第幾個星期(周)
select DATENAME(WEEKDAY,GETDATE()) --星期幾
⑨ sql 怎麼獲取日期欄位的年月日
select to_char(時間欄位,'yyyy-mm-dd') from 表名;
這樣就取出時間欄位中的年月日 ,格式為 2010-08-19