概要:このチュートリアルでは、SQLite datetime()
関数を使用して datetime 値を操作する方法を学習します。
Introduction to SQLite datetime() function
datetime()
関数は時刻文字列と 1 つ以上の修飾子を受けとります。
Code language: SQL (Structured Query Language) (sql)
この構文では、
-
time_string
は特定の日時を指定し、たとえば、現在の日時はnow
となります。
datetime()
関数はこのフォーマットでdatetime値を返します。 YYYY-MM-DD HH:MM:SS
たとえば、次のステートメントは昨日の現在時刻を返します:
Code language: SQL (Structured Query Language) (sql)
このステートメントでは:
- 最初に、
now
time string は現在の日時を返します。 - 次に、
-1 day
modifier は昨日の現在時刻になる現在の日付時刻に適用します。 - 3つ目は、
localtime
修飾子がローカル時刻を返すように関数を指示することです。
SQLite datetime() 関数の例
次のステートメントは、ローカルタイムで現在の日付と時刻を返します:
Code language: SQL (Structured Query Language) (sql)
UTCで現在の日付と時刻を返すには、次のステートメントを使用します:
Code language: SQL (Structured Query Language) (sql)
次のステートメントは3列のreferrals
という新しいテーブルを作成します。 id
, source
, created_at
.
Code language: SQL (Structured Query Language) (sql)
created_at
列のデフォルト値は、UTCでの現在の日付と時刻であるCURRENT_TIMESTAMP
に設定されています。
referrals
テーブルにデータを挿入するには、次のINSERT
ステートメントを使用します:
Code language: SQL (Structured Query Language) (sql)
次のクエリはreferrals
テーブルからデータを返します:
Code language: SQL (Structured Query Language) (sql)
出力に明確に示されているように、created_at
列にあるデータ、UTCの作成時刻です。
この作成された時間の値をローカル時間に変換するには、次のクエリに示すようにdatetime()
関数を使用します:
。