sql >> Database teknologi >  >> RDS >> Sqlserver

SQL:Bruger DATEADD med bigints

Bare gør det problematiske DATEADD i to trin, startende med en grovere tidsenhed (sekunder, minutter, timer osv.), og fald derefter tilbage til den finkornede for resten.

Undgå dog at gå til niveauet for uger og måneder, da det ville kræve faktiske kalenderberegninger, og vi foretrækker, at systemet håndterer det.

Eksempel nedenfor skal beregne en starttid givet en (muligvis) stor strømvarighed i millisekunder.

-- 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. JDBC, Elasticsearch og Postgresql Json datatype

  2. SQL tilfældig streng fra liste

  3. Tildel den samlede værdi af måneden til hver dag i måneden

  4. hvordan man sender parametre til trigger i Oracle