SQL入門チュートリアルマニュ...login
SQL入門チュートリアルマニュアル
著者:php.cn  更新時間:2022-04-12 14:15:40

SQLの日付



SQL の日付

Note日付を扱うとき、最も難しい作業は、おそらく、挿入された日付の形式がデータベース内の日付列の形式と一致することを確認することです。

データに日付部分のみが含まれている限り、クエリの実行に問題はありません。ただし、時間の部分になると、状況は少し複雑になります。

日付クエリの複雑さについて説明する前に、まず最も重要な組み込みの日付処理関数を見てみましょう。


MySQL 日付関数

次の表は、MySQL の最も重要な組み込み日付関数をリストしています:

関数説明
NOW()現在の日付と時刻を返します
CURDATE()現在の日付を返します
CURTIME()現在時刻を返します
DATE()日付または日付/時刻式の日付部分を抽出します
EXTRACT( )日付/時刻の別の部分を返します
DATE_ADD()指定された時間間隔を日付に追加します
DATE_SUB()日付から指定された時間間隔を減算します
DATEDIFF() 2 つの日付の間の日数を返します
DATE_FORMAT() 日付/時刻をさまざまな形式で表示します


SQL Server の日付関数

次の表は、最も一般的な関数のリストですSQL Server の重要な組み込み日付関数:

FunctionDescription
GETDATE()現在の日付と時刻を返します
DATEPART()日付の個々の部分を返します/time
DATEADD()日付から指定された時間間隔を加算または減算します
DATEDIFF()2つの日付の間の時間を返します
CONVERT()日付をさまざまな形式で表示します/ 時間


SQL 日付データ型

MySQL 日付または日付/時刻の値をデータベースに保存するには、次のデータ型を使用します:

  • DATE - 形式: YYYY-MM-DD

  • DATETIME -形式: YYYY- MM-DD HH:MM:SS

  • TIMESTAMP - 形式: YYYY-MM-DD HH:MM:SS

  • YEAR - 形式: YYYY または YY

SQL Server を使用します日付または日付/時刻の値をデータベースに保存するには、次のデータ型を使用します:

  • DATE - 形式: YYYY-MM-DD

  • DATETIME - 形式: YYYY-MM-DD HH:MM:SS

  • SMALLDATETIME - 形式: YYYY -MM-DD HH:MM:SS

  • TIMESTAMP - 形式: 一意の数値

コメント: データベースに新しいテーブルを作成するときは、データを選択する必要があります列に入力してください!

利用可能なすべてのデータ型について詳しくは、完全なデータ型リファレンス マニュアルをご覧ください。


SQL 日付処理

Note 時間部分が関係しない場合は、2 つの日付を簡単に比較できます。

次の「Orders」テーブルがあるとします。

2カマンベールピエロ 2008-11-093モッツァレラ・ディ・ジョバンニ2008-11-114マスカルポーネ・ファビオリ2008-10-29さて、以上からよろしくお願いしますtable OrderDateが「2008-11-11」のレコードを選択します。 SELECT * FROM Orders WHERE OrderDate='2008-11-11'結果セットは次のとおりです: OrderIdProductNameOrderDate
次の SELECT ステートメントを使用します:

1

Geitost
2008-11-11

3Mozzarella di Giovanni さて、「Orders」テーブルがあると仮定します。こんな感じです(ご了承ください)列の「Or derDate」時間部分): OrderDate2008-11-11 13:23:44
2008-11-11
OrderIdProductName
1Geitost

2カマンベールピエロモッツァレラ・ディ・ジョバンニマスカルポーネファビオリ
2008-11-09 15:45:213
2008-11-11 11:12:014
20 08 -10-29 14:56:59

上記と同じ SELECT ステートメントを使用すると:

SELECT * FROM Orders WHERE OrderDate='2008-11-11'

その場合、結果は得られません。これは、このクエリの日付には時間コンポーネントが含まれていないためです。

ヒント: クエリをシンプルにして管理しやすくしたい場合は、日付に時刻の部分を使用しないでください。