SQLでDATE と DATETIME の相互変換を行う方法

この記事ではSQLにおける`DATE`と`DATETIME`のデータ型の相互変換方法について解説します。SQLで日付や時刻を扱う場合、データ型には`DATE`と`DATETIME`がよく用いられます。それぞれの違いと相互変換の手順を具体的なSQLクエリとともに紹介します。

目次

DATEとDATETIMEの基本的な違い

`DATE`と`DATETIME`は、SQLで日付や時間を保存するためのデータ型ですが、それぞれには以下のような特性があります。

データ型日付時刻
DATE×
DATETIME
テーブル1: DATEとDATETIMEの特性

DATEからDATETIMEへの変換

DATEからDATETIMEに変換する場合は、SQLの内蔵関数を使用できます。

CAST関数を用いた方法

CAST関数を使用して、DATE型からDATETIME型に変換することができます。

SELECT CAST('2023-10-20' AS DATETIME);

このクエリは、`2023-10-20`というDATE型のデータを`2023-10-20 00:00:00`というDATETIME型に変換します。

DATETIMEからDATEへの変換

逆に、DATETIMEからDATEに変換する場合もいくつかの方法があります。

CAST関数を用いた方法

こちらもCAST関数を用いて、DATETIME型からDATE型に変換することができます。

SELECT CAST('2023-10-20 12:34:56' AS DATE);

このクエリは、`2023-10-20 12:34:56`というDATETIME型のデータを`2023-10-20`というDATE型に変換します。

DATE関数を用いた方法

DATE関数を使用する方法もあります。

SELECT DATE('2023-10-20 12:34:56');

この方法も同様に、`2023-10-20 12:34:56`を`2023-10-20`に変換します。

まとめ

SQLにおいて`DATE`と`DATETIME`の相互変換は比較的簡単に行うことができます。主な方法としては、CAST関数を使用する方法がありますが、DATETIMEからDATEへの変換には専用のDATE関数も利用可能です。

コメント

コメントする

目次