sql >> Databáze >  >> RDS >> Sqlserver

SQL:Použití DATEADD s biginty

Stačí provést problematické DATEADD ve dvou krocích, počínaje hrubší časovou jednotkou (sekundy, minuty, hodiny atd.), poté se vrátit zpět k jemnozrnné pro zbytek.

Vyhněte se však přechodu na úroveň týdnů a měsíců, protože by to vyžadovalo skutečné kalendářní výpočty a byli bychom raději, kdyby to zvládl systém.

Níže uvedený příklad potřebuje vypočítat počáteční čas daný (možná) velkým trváním proudu v milisekundách.

-- large durations can overflow the integer argument needed for DATEADD

-- so do as two steps subtracting minutes (60000ms) and then remaining milliseconds.

DATEADD(ms, -large_duration_ms%60000, DATEADD(minute, -large_duration_ms/60000, GETDATE()))


  1. MySQL LOAD DATA INFILE s čárkou jako oddělovačem desetinných míst

  2. Export výsledků dotazů v MySQL Workbench nad 1000 záznamů

  3. Opětovné použití hodnoty výrazu SQL SELECT pro jiný výraz

  4. V ''mysql'' Manager souboru pid ukončete bez aktualizačního souboru