logo

テーブルの作成時に日付形式を指定し、SQL で入力するにはどうすればよいですか?

データベースを操作するときは、ほぼすべてのテーブルに日付列が含まれていることがわかります。結局のところ、データを分析する際には、データの日付が重要な役割を果たします。日付を特定の形式またはわかりやすい形式で保存することは非常に重要です。この記事では、SQL Server で日付形式を指定する方法を学びます。

デモのデータベースとテーブルを作成しましょう。



ステップ1: データベースを作成する

次のコマンドを使用してデータベースを作成します。

文字列分割bash

クエリ:



CREATE DATABASE User_details;>

ステップ2: データベースを使用する

クエリ:

USE User_details;>

ステップ 3: テーブル定義



データベースには次の GFG_user テーブルがあります。

クエリ:

CREATE TABLE GFG_user(Id INT NOT NULL,Dt DATE, Address VARCHAR(100),Dt_FORMATTED AS (convert(varchar(255), dt, 104)), PRIMARY KEY (Id) );>

出力:

ここでは、フォーマットされた日付を保存する Dt_FORMATTED という名前の列を作成しました。

さて、次のことがわかります。 変換する() 関数。 CONVERT() 関数は、任意の型の値を指定されたデータ型に変換するだけです。

構文:

CONVERT ( data_type ( length ) , expression , style )>

この関数を使用すると、文字列を日付にキャストします。スタイル引数の代わりに、次のように述べました。 「104」 。日付の形式を指定する数値コードです。

さまざまな形式で使用されるさまざまなコードを確認するには、この表を確認してください。

世紀とともに

(yy)

世紀とともに

(yyyy)

標準

入出力

0 または 100 (1.2)

日時のデフォルト

そしてsmalldatetime

月 日 yyy ああ:

miAM (またはPM)

1 101 私たち。

1 = ミリメートル/日/年

二分探索木からの削除

101 = mm/dd/yyyy

2 102 ANSI

2 = yy.mm.dd

102 = yyyy.mm.dd

3 103 イギリス/フランス

3 = 日/月/年

103 = 日/月/年

4 104 ドイツ人

4 = dd.mm.yy

104 = dd.mm.yyyy

十一 111 日本

11 = yy/mm/dd

111 = yyyy/mm/dd

12 112 ISO

12 = ymmdd

112 = yyyymmdd

13 または 113 (1.2) ヨーロッパのデフォルト + ミリ秒 dd 月 yyyy hh:mi:ss:mmm (24 時間)
131 (2) ヒジュラ語 (5) dd/mm/yyyy hh:mi:ss:mmmAM

ここでは、最もよく使用される 10 個の形式のみを取り上げました。

文字列Javaで分割

ステップ 4: 値の挿入

次のコマンドは、テーブルに値を挿入するために使用されます。

クエリ:

SET DATEFORMAT dmy; INSERT INTO GFG_user (Id, Dt, Address) VALUES ('1','23.11.2021', 'German');>

このクエリでは、 日付形式 設定。

構文:

SET DATEFORMAT format>

文字列を挿入するとき、サーバーはテーブルに挿入する前に文字列を日付に変換しようとします。日付の前に月を置くのか、月の前に日付を置くのかが分からないためです。たとえば、06.07.2000 を挿入しようとしているとします。サーバーは、日付が 7 月 6 日なのか、6 月 7 日なのかを検出できません。操作を実行しているユーザー アカウントのローカリゼーション設定を使用して、操作を実行しているアカウントはほとんどの場合 USA 形式に設定されているため、DATEFORMAT に言及しないとエラーが発生する可能性があることを認識します。 月 日 年 (mdy)

として保存したかったためにエラーが発生しました dmy 、 ない メディ 。ただし、DATEFORMAT を使用すると、それを取り除くのに役立ちます。

出力:

テーブルの作成は完了です。次に、目的の出力が得られているかどうかを確認してみましょう。

ステップ5: テーブルのデータを表示する

クエリ:

SELECT * FROM GFG_user;>

出力:

Dt_FORMATTED 列にドイツ語形式の日付を取得することに成功しました。

データベースに日付を挿入する別の方法:

SQLの「to_date」関数を使用して日付を挿入することもできます。次の構文を使用できます。

TO_DATE([value], [format]);>

日付の形式には次のようなさまざまなタイプがあります。 「dd-mm-yyyy」「yyyy-mm-dd」「mm-dd-yyyy」

Javaソートの配列リスト

例:

CREATE TABLE GFG_INTERN (e_name VARCHAR(20), e_id number, joiningDate date); INSERT INTO GFG_INTERN VALUES ('FirstIntern', 001, to_date('2022-12-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('SecondIntern', 002, to_date('2022-Dec-12','yyyy-mm-dd')); INSERT INTO GFG_INTERN VALUES ('ThirdIntern', 003, to_date('30-12-2022','dd-mm-yyyy')); INSERT INTO GFG_INTERN VALUES ('FourthIntern', 004, to_date('12-31-2022','mm-dd-yyyy')); SELECT * FROM GFG_INTERN;>

SQLコマンド

出力:

出力