sql時間
Ⅰ sql 怎麼計算時間
SELECTDATEDIFF(mi,intime,outtime)ASElapsedTimeFROM[表名]
你可以使用DATEDIFF(datepart,startdate,enddate)函數,
datepart 參數可以是下列的值:
datepart 縮寫
年 yy, yyyy
季度 qq, q
月 mm, m
年中的日 dy, y
日 dd, d
周 wk, ww
星期 dw, w
小時 hh
分鍾 mi, n
秒 ss, s
毫秒 ms
微妙 mcs
納秒 ns
Ⅱ SQL里時間怎麼比較
1\如果是指90天
select *
from table
where datediff(day,time,getdate())<=90
或者
select *
from table
where time>=dateadd(day,-90,getdate())
2\如果是3月
select *
from table
where time>=dateadd(month,-3,getdate())
3\如果是當前月往前推兩個自然月的1號算起
select *
from table
where time>=Dateadd(mm,datediff(mm,0,getdate())-2,0)
Ⅲ Sql中取得當前系統時間
如果要在SQL里寫的話,遞增需要用存儲過程或觸發器或用戶函數來寫。
如果只是為了不重復的話,可以用當前時間的millisecond來區分,如我在你另一相同的問題中回答的:
http://..com/question/11983880.html
用 DATEPART() 結合 GETDATE() 等函數來取值
SELECT CAST(DATEPART(Hour,GETDATE()) AS nvarchar(2)) +
CAST(DATEPART(minute,GETDATE()) AS nvarchar(2)) +
CAST(DATEPART(second,GETDATE()) AS nvarchar(2)) +
CAST(DATEPART(millisecond,GETDATE()) AS nvarchar(20))
這樣可以得到不重復的值。
Ⅳ 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 * From 表名
Where to_date(日期欄位,'mm/dd/yyyy hh24:mi:ss') Between
to_date('2/1/2008 00:00:00','mm/dd/yyyy hh24:mi:ss')
And to_date('2/15/2008 23:59:59 hh24:mi:ss')
日期欄位最好強轉下格式用to_date()
Ⅵ 關於SQL時間條件
你確認下查出來的數據是否是有時分秒的
從你sql看,就是大於5.29號凌晨0點0分0秒
wheregt.getdate>'2018-05-29'
是等同於
wheregt.getdate>'2018-05-2900:00:00'
如果你一定要查大於今天的。應該寫成
wheregt.getdate>'2018-05-2923:59:59'
或者
wheregt.getdate>='2018-05-30'
Ⅶ sql時間函數
--MS SQL SERVER
SELECT DATEDIFF(MONTH,'2005-06-01',GETDATE()) M
/*結果:
M
-----------
78
(1 行受影響)
Ⅷ SQL日期計算
1,
select dateadd(dd,2-datepart(dw,dateadd(wk,周數-1,年份)),dateadd(wk,周數-1,周數)),dateadd(dd,8-datepart(dw,dateadd(wk,周數-1,周數)),dateadd(wk,周數-1,周數))
注意:年份的格式為『****-01-01』,如你這里的2009年則是『2009-01-01』
2,
declare @i int
declare @datetime datetime
declare @table table(ID int,date datetime)
set @i=1
set @datetime=年份+月份+01(格式如『2009-06-01』)
while @datetime < 年份+(月份+1)+01(格式如『2009-07-01』)
begin
if datepart(weekday,@datetime)=2
begin
insert into @table values(@i,@datetime)
set @i=@i+1
end
set @datetime=dateadd(day,1,@datetime)
end
select * from @table where ID=周數
我這樣寫應該很容易看,有什麼問題再問我,要求加分……
Ⅸ sql中的日期如何輸入
使用''號來寫,如'2005-12-06'
帶時間輸入 '2005-12-16 23:32:48'
帶AM和PM你使用24小時制就可以了
Ⅹ sql如何讀取系統日期和時間
GETDATE() 函數從 SQL Server 返回當前的時間和日期。
使用下面的 SELECT 語句:
SELECT GETDATE() AS CurrentDateTime
結果:
CurrentDateTime
2008-12-29 16:25:46.635
注釋:上面的時間部分精確到毫秒。
例子 2
下面的 SQL 創建帶有日期時間列 (OrderDate) 的 "Orders" 表:
CREATE TABLE Orders
(
OrderId int NOT NULL PRIMARY KEY,
ProctName varchar(50) NOT NULL,
OrderDate datetime NOT NULL DEFAULT GETDATE()
)
請注意,OrderDate 把 GETDATE() 規定為默認值。結果是,當您在表中插入新行時,當前日期和時間自動插入列中。
現在,我們希望在 "Orders" 表中插入一條記錄:
INSERT INTO Orders (ProctName) VALUES ('Computer')
"Orders" 表將成為這樣:
OrderId ProctName OrderDate
1 'Computer' 2008-12-29 16:25:46.635