sql >> Databasteknik >  >> RDS >> Sqlserver

T-sql, ticks, tidsstämpel

Det är osannolikt att du kommer att kunna få samma typ av noggrannhet ur SQL som DateTime.Ticks eftersom SQL inte uttrycker tid med så mycket precision. SQL Server lagrar bara tid till ungefär 1/300-dels sekund, medan en enstaka bock representerar hundra nanosekunder eller en tiomiljondels sekund.

SELECT DATEDIFF(s, '19700101', GETDATE()) 

Ovanstående fråga kommer att ge dig en Unix-stil tidsstämpel om det fungerar, men för att ge några riktiga förslag måste jag veta vad du använder data till. Om du dock behöver högre upplösning än 3 ms måste du titta utanför SQL.

               DATETIME: 0.01      (3 ms)
QueryPerformanceCounter: 0.0000001 (100 ns)
              DATETIME2: 0.0000001 (7 decimal places, 100 ns)


  1. Oracle inaktiv anslutning

  2. Räkna upp kombinationer via SQL

  3. Korrekt indexering av Join-Where-Group Genom att välja frågor undviker du att använda temporär; Använder filsortering

  4. Hur använder man en Oracle Ref Cursor från C# ODP.NET som en ReturnValue-parameter, utan att använda en lagrad funktion eller procedur?