Moravian instruments, Inc., source: https://www.mii.cz/art?id=190&lang=409, printed: 02.05.2025 4:16:03

Main pageTechnical supportFAQControl Web 5

Jak zobrazit UTC z archivních souborů jako formátovaný datum a čas?

V databázových tabulkách vytvářených sekcemi archive a alarm je čas záznamu zapisován jako Juliánské datum doplněné o zlomek časového kroku (údaj za dvojtečkou). Pro zobrazování je ale určitě přehlednější používat formátovaný datum a čas podle národních zvyklostí. Následující SQL příkaz demonstruje, jak převést Juliánské datum do formátované podoby.

Syntax T-SQL (MS SQL Server)

SELECT UTC, CAST((CAST(LEFT(UTC, 16) AS FLOAT) - 2415020.5) AS DATETIME) AS MyDate FROM Table

Syntax pro MDB databázi (MS Access)

SELECT UTC, CDate(CDbl(Left(UTC,7) & ',' & Mid(UTC,9,8)) - 2415018.5) AS MyDate FROM Table

Výsledkem tohoto dotazu bude tedy tabulka, která bude v prvním sloupci zobrazovat původní podobu Juliánského data a ve druhém sloupci formátovaný datum a čas.

Poznámka:

Nezapomeňte, že časový údaj je zapsán jako UTC. Pokud tedy chcete získat pásmový čas, musíte ještě od položky UTC odečíst součet hodnot ze sloupců UTC_BIAS (posunutí pásmového času vzhledem k UTC v minutách) a DST_BIAS (posunutí letního času v minutách).

Pokud tedy bude chtít získat pásmový čas záznamu, budou dotazy vypadat takto:

Syntax T-SQL (MS SQL Server)

SELECT UTC, CAST((CAST(LEFT(UTC, 16) AS FLOAT) - (UTC_BIAS + DST_BIAS)/1440.0 - 2415020.5) AS DATETIME) AS MyDate FROM Table

Syntax pro MDB databázi (MS Access)

SELECT UTC, CDate(CDbl(Left(UTC,7) & ',' & Mid(UTC,9,8)) - (UTC_BIAS + DST_BIAS)/1440.0 - 2415018.5) AS MyDate FROM Table