sql時間毫秒
① sql server 日期時間 存儲時怎麼能不讓它顯示毫秒,後面那3個000
存儲格式更改下即可。如下:
DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")。
小貼士:
此處是一個如何使用不同的DATETIME2精度值來顯示不同的時間格式的示例:
PRINT @T1;
PRINT @T2; DECLARE @T0 time(0) = '16:59:11.1234567';DECLARE @T1 time(1) = '16:59:11.1234567';DECLARE @T2 time(2) = '16:59:11.1234567';DECLARE @T3 time(3) = '16:59:11.1234567';DECLARE @T4 time(4) = '16:59:11.1234567';DECLARE @T5 time(5) = '16:59:11.1234567';DECLARE @T6 time(6) = '16:59:11.1234567';DECLARE @T7 time(7) = '16:59:11.1234567';PRINT @T0;
PRINT @T3;
PRINT @T4;
PRINT @T5;
PRINT @T6;
PRINT @T7;
當運行上述代碼時將會得到如下結果:
16:59:11
16:59:11.1
16:59:11.12
16:59:11.123
16:59:11.1235
16:59:11.12346
16:59:11.123457
16:59:11.1234567
② MSSQL如何查看sql語句執行時間判斷執行效率
寫程序的人,往往需要分析所寫的SQL語句是否已經優化過了,伺服器的響應時間有多快,這個時候就需要用到SQL的STATISTICS狀態值來查看了。
通過設置STATISTICS我們可以查看執行SQL時的系統情況。選項有PROFILE,IO ,TIME。介紹如下:
SET STATISTICS PROFILE ON:顯示分析、編譯和執行查詢所需的時間(以毫秒為單位)。
SET STATISTICS IO ON:報告與語句內引用的每個表的掃描數、邏輯讀取數(在高速緩存中訪問的頁數)和物理讀取數(訪問磁碟的次數)有關的信息。
SET STATISTICS TIME ON:顯示每個查詢執行後的結果集,代表查詢執行的配置文件。
使用方法:打開SQL SERVER 查詢分析器,輸入以下語句:
SET STATISTICS PROFILE ON
SET STATISTICS IO ON
SET STATISTICS TIME ON
GO /*--你的SQL腳本開始*/
SELECT [TestCase] FROM [TestCaseSelect]
GO /*--你的SQL腳本結束*/
SET STATISTICS PROFILE OFF
SET STATISTICS IO OFF
SET STATISTICS TIME OFF
效果如圖所示:
另外,也可以通過手工添加語句,計算執行時間來查看執行語句花費了的時間,以判斷該條SQL語句的效率如何:
declare @d datetime
set @d=getdate()
/*你的SQL腳本開始*/
SELECT [TestCase] FROM [TestCaseSelect]
/*你的SQL腳本結束*/
select [語句執行花費時間(毫秒)]=datediff(ms,@d,getdate())
③ sql里日期怎麼加減
問題一:SELECT DATEDIFF( Day, '2008.08.25', '2008.09.01' )
問題二:SELECT DATEDIFF( Second, 2009-8-25 12:15:12', 2009-9-1 7:18:20') --返回相差秒數
或者
SELECT DATEDIFF( Minute, 2009-8-25 12:15:12', 2009-9-1 7:18:20') --返回相差分鍾數
或者
SELECT DATEDIFF( Hour, 2009-8-25 12:15:12', 2009-9-1 7:18:20') --返回相差小時數
問題三:SELECT DATEDIFF( Day, 2009-8-25 12:15:12', 2009-9-1 7:18:20')
附:
DATEDIFF 函數使用說明:
返回跨兩個指定日期的日期和時間邊界數。
語法
DATEDIFF ( datepart , startdate , enddate )
參數
datepart
是規定了應在日期的哪一部分計算差額的參數。下表列出了 Microsoft�0�3 SQL Server�6�4 識別的日期部分和縮寫。
日期部分 縮寫
year yy, yyyy
quarter qq, q
Month mm, m
dayofyear dy, y
Day dd, d
Week wk, ww
Hour hh
minute mi, n
second ss, s
millisecond ms
startdate
是計算的開始日期。startdate 是返回 datetime 或 smalldatetime 值或日期格式字元串的表達式。
因為 smalldatetime 只精確到分鍾,所以當用 smalldatetime 值時,秒和毫秒總是 0。
如果您只指定年份的最後兩位數字,則小於或等於"兩位數年份截止期"配置選項的值的最後兩位數字的數字所在世紀與截止年所在世紀相同。大於該選項的值的最後兩位數字的數字所在世紀為截止年所在世紀的前一個世紀。例如,如果 two digit year cutoff 為 2049(默認),則 49 被解釋為 2049,2050 被解釋為 1950。為避免模糊,請使用四位數的年份。
有關時間值指定的更多信息,請參見時間格式。有關日期指定的更多信息,請參見 datetime 和 smalldatetime。
enddate
是計算的終止日期。enddate 是返回 datetime 或 smalldatetime 值或日期格式字元串的表達式。
返回類型
integer
注釋
startdate 是從 enddate 減去。如果 startdate 比 enddate 晚,返回負值。
當結果超出整數值范圍,DATEDIFF 產生錯誤。對於毫秒,最大數是 24 天 20 小時 31 分鍾零 23.647 秒。對於秒,最大數是 68 年。
計算跨分鍾、秒和毫秒這些邊界的方法,使得 DATEDIFF 給出的結果在全部數據類型中是一致的。結果是帶正負號的整數值,其等於跨第一個和第二個日期間的 datepart 邊界數。例如,在 1 月 4 日(星期日)和 1 月 11 日(星期日)之間的星期數是 1。
示例
此示例確定在 pubs 資料庫中標題發布日期和當前日期間的天數。
USE pubs
GO
SELECT DATEDIFF(day, pubdate, getdate()) AS no_of_days
FROM titles
GO
④ 如何SQL Server 獲取當前時間毫秒級
Datetime類型只能顯示秒,需要轉換;
轉換SQL 語句如下:
selectconvert(varchar(23),getdate(),121)
執行SQL 得出的結果如下:
2015-07-31 17:48:40.083