0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

100日でSQLの達人になる@LeetCode! Day50 <CREATE TABLE テーブル名, 変数型のまとめ>

Last updated at Posted at 2022-03-28

テーブルを作成する

前回に引き続きLeetCodeの問題はお休み。

db<>fiddleを使って、何も無いところからテーブルを作成するクエリを書いていきます。

SQL
CREATE TABLE テーブル名 (変数名1 変数型 オプション, 変数名2 変数型 オプション)

これが基本形。変数は1つ以上指定しないと駄目な様子。オプションは省略可。
このクエリを実行するとテーブル名で指定した名前の空のテーブルが作成できます。

変数型には、下記のものが指定できます。

データタイプ クエリ 説明
整数 BIT 1または0の整数
整数 TINYINT 1Byte(8bit)までの整数つまり0-255
整数 SMALLINT 2Byteまでの整数
整数 INT 4Byteまでの整数。通常はこれで良さそう
整数 BIGINT 8Byteまでの整数
少数 DECIMAL[(p,s)] []は省略可。pが整数と少数を合わせた有効桁数、sが小数部桁数
少数 NUMERIC[(p,s)] DECIMALと全く同じ
少数 FLOAT[(n)] []は省略可。浮動小数点型
少数 REAL 4Byteの浮動小数点型
文字列 NCHAR[(n)] n桁の固定長のUnicode文字列
文字列 NVARCHAR(n or MAX) n桁の可変長のUnicod文字列、MAXの場合は2GBまで
文字列 CHAR[(n)] n桁の固定長の文字列
文字列 VARCHAR[(n or MAX)] n桁の可変長の文字列、MAXの場合は2GBまで
日付 DATE 日付のみ
日付 TIME 時刻のみ
日付 DATETIME2 日付と時刻を表示

オプションは省略できますが、下記のものが指定できます。

クエリ 説明
NOT NULL NULLを禁止
IDENTITY(開始番号, 増加数) 数値が開始番号から増加数ずつ増えて連番で入力される
AUTO_INCREMENT (これはMS SQL Serverでは使用できない)数値が連番で入力される
DEFAULT DEFAULT 0のように使用しDEFAULTの後のものが初期値になる
PRIMARY KEY 主キーの設定。同時にNOT NULLの設定も必要になる
UNIQUE 重複禁止。NULLはOK

PRIMARY KEYを設定するとインデックスが自動的に作成されて、テーブル検索の速度も早くなります。

今日のポイントはCREATE TABLEでテーブルを作成するとした。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?