はじめに
vsqlから現在時刻やトランザクション開始時刻を確認する方法をご紹介します。
現在時刻を確認する
以下のいずれかの関数を使うことで、現在時刻を確認することができます。
dbadmin=> select getdate();
getdate
----------------------------
2018-08-08 13:56:51.336947
(1 row)dbadmin=> select sysdate();
sysdate
----------------------------
2018-08-08 14:03:27.715059
(1 row)getdateとsysdateの違い
getdateは括弧「()」を必要としますが、sysdateでは括弧「()」はオプション扱いのため、括弧が無くても使えます。
トランザクション開始時刻を確認するには
以下のいずれかの関数を使うことで、トランザクション開始時刻を確認することができます。
dbadmin=> select now();
now
-------------------------------
2018-08-08 13:52:46.431073+09
(1 row)dbadmin=> select transaction_timestamp();
transaction_timestamp
-------------------------------
2018-08-08 13:52:46.431073+09
(1 row)時間や日付の情報確認に関する補足
年、月、日、時間など任意の情報を確認するには以下の様な関数を利用します。
ここでは主な関数を挙げておきます。
関数 | 内容 |
|---|---|
DATE | YYYY-MM-DDで日付を表示 |
YEAR | 年を表示 |
MONTH | 月を表示 |
DAY | 日を表示 |
HOUR | 時間を表示 |
MINUTE | 分を表示 |
SECOND | 秒を表示 |
DAYOFYEAR | 1月1日から何日目か表示 |
DAYOFMONTH | 当月の何日目か表示 |
DAYOFWEEK | 日曜日はじまりの曜日を数字で表示 |
参考情報
Date/Time Functions
https://my.vertica.com/docs/9.1.x/HTML/index.htm#Authoring/SQLReferenceManual/Functions/Date-Time/DateTimeFunctions-1.htm
検証バージョンについて
この記事の内容はVertica 9.1で確認しています。