🎃

SQL簡単にまとめました。SQL基礎

に公開

SQL簡単まとめ

この記事はSQLはできますが、文法をよく忘れる人、あるいはSQLを長い間していない人のために作った記事です。基本的なSQL知識が必要です。この記事はJOIN文を扱っていません。SQLの基本文法を復習する感じで、この記事を読んでいただければと思います。

目次

  • CREATE
  • ALTER
  • DROP
  • INSERT
  • UPDATE
  • DELETE
  • SELECT

CREATE

DATABASE生成

CREATE DATABASEは文字通り、DATABASEを生成するための構文です。

Syntax

CREATE DATABASE データベース名;

Example

CREATE DATABASE DB;

DATABASE選択

USE文を利用してDATABASEを選択することができます。

Syntax

USEデータベース名;

Example

USE DB;

DATABASEのTABLE生成

USE文を利用して、DATABASEを選択した後、該当DATABASEでTABLEを生成することができます。 CREATE TABLE文を利用します。

Syntax

CREATE TABLE テーブル名 (
フィールド名_1 タイプ_1、
フィールド名_2 タイプ_2、
フィールド名_3 タイプ_3、
...
);

CREATE TABLE文を利用して、PLAYERテーブルを生成する例です。

Example

CREATE TABLE PLAYER (
ID INT
NAME VARCHAR(30)、
POSITION VARCHAR(20)、
AGE INT
GOAL INT
ASSIST INT
);

Constraint: 制約条件

各フィールドに制約をかけることができます。

NOT NULL : 該当フィールドはNULL値ができません。
UNIQUE : 該当フィールドの値は、テーブル内の該当フィールドで唯一である必要があります。 PRIMARY KEY : 当該フィールドはNOT NULLとUNIQUEの制約条件の両方を持ちます。
FOREIGNKEY : 該当フィールドは、他のテーブルの特定フィールド値と一致する必要があります。
DEFAULT : 該当フィールドはデフォルト値を持ちます。

Syntax

CREATE TABLE テーブル名 (
フィールド名_1 タイプ_1 制約条件_1、
フィールド名_2タイプ_2制約条件_2、
フィールド名_3タイプ_3制約条件_3、
...
);

CREATE TABLE文を用いて、フィールドに適切な制約が入ったPLAYERテーブルとTEAMテーブルを生成する例です。

Example

CREATE TABLE TEAM (
ID INT PRIMARY KEY
NAME VARCHAR(30) NOT NULL
COUNTRY VARCHAR(20) DEFAULT "Argentina"
);


CREATE TABLE PLAYER (
ID INT PRIMARY KEY
NAME VARCHAR(30) NOT NULL
POSITION VARCHAR(20)、
COUNTRY VARCHAR(20) DEFAULT "Argentina"
AGE INT
GOAL INT DEFAULT 0
ASSIST INT DEFAULT 0
TEAM INT NOT NULL
FOREIGN KEY (TEAM)
REFERENCES TEAM (ID)
);

ALTER

ALTER文を利用してTABLEのフィールド修正あるいはDATABASEの文字集合およびコレーションを修正することができます。

ALTER DATABASE

ALTER DATABASEを通じてDATABASEのCHARACTER SET、COLLATEを修正することができます。

Syntax

ALTER DATABASE データベース名 CHARACTER SET=文字集合名;
ALTER DATABASE データベース名 COLLATE=コレーション 名前;

DBデータベースに汎用的に使用するutf8文字セットとutf8_general_ciコレクションを使用してみましょう。

Example

ALTER DATABASE DB CHARACTER SET=uft8 COLLATE=utf8_general_ci;

ALTER TABLE

ALTER TABLEを通じてTABLEのフィールドタイプ、制約条件の修正またはフィールド追加および削除することができます。

ADD : 追加
DROP : 削除
MODIFY COLUMN : 修正
Syntax

ALTER TABLE テーブル名 ADD フィールド名 フィールドタイプ;
ALTER TABLE テーブル名 DROP フィールド名;
ALTER TABLE テーブル名 MODIFY COLUMN フィールド名 フィールドタイプ;

ALTER TABLEを利用して、PLAYERテーブルにADDでフィールドを追加し、DROPでフィールドを除去し、MODIFY COLUMNで制約条件を追加してみます。

Example

ALTER TABLE PLAYER ADD RATING FLOAT(3, 2) DEFAULT 0.00;
ALTER TABLE PLAYER DROP COUNTRY;
ALTER TABLE PLAYER MODIFY COLUMN AGE INT DEFAULT 20;

DROP

DROPを利用してDATABASEやTABLEを削除することができます。

Syntax

DROP DATABASE データベース名;
DROP TABLE テーブル名;

一度PLAYERテーブルとDBデータベースを削除してみます。

Example

DROP TABLE PLAYER;
DROP DATABASE DB;

TRUNCATE TABLE

TRUNCATE TABLEはテーブル内のスキーマは残しておき、テーブル内のデータだけを消そうとする時に使用します。

Syntax

TRUNCATE TABLE テーブル名;

Example

TRUNCATE TABLE PLAYER;

INSERT

INSERT INTO文はデータを挿入する際に使用します。 VALUESに追加するデータを入力すればいいです。 複数入力も可能です。

Syntax

INSERT INTOテーブル名(フィールド名_1、フィールド名_2、フィールド名_3、...)
VALUES (フィールド値_1、フィールド値_2、フィールド値_3、...)、
(フィールド値_1、フィールド値_2、フィールド値_3)、...;

TEAMテーブルにTottenham Hotspurを追加してみます。

Example

INSERT INTO TEAM(ID, NAME, COUNTRY)
VALUES (1, "Tottenham Hotspur", "England");

UPDATE

UPDATE文を利用してデータを修正することができます。
UPDATEでTABLEを選択し、
SETで希望するデータを設定した後、
WHEREでデータ修正を希望する行を選択することができます。

Syntax

UPDATE テーブル名
SET フィールド名_1=フィールド値_1、フィールド名_2=フィールド値_2、···
WHERE フィールド名_1=フィールド値_1、フィールド名_2=フィールド値_2、...;

TEAMテーブルに入れておいたTottenham Hotspurの名前をトッテナムホットスパーに修正してみます。

Example

UPDATE TEAM
SET NAME="トッテナムホットスパー"
WHERE NAME="Tottenham Hotspur";

DELETE

DELETE文を利用してデータを削除することができます。
DELETEFROM文でTABLEを選択し、
WHERE文でデータ削除を希望する行を選択することができます。

Syntax

DELETE FROM テーブル名
WHERE フィールド名_1=フィールド値_1、フィールド名_2=フィールド値_2、...;

TEAMテーブルに入れておいたトッテナムホットスパーを削除してみます。

Example

DELETE FROM TEAM
WHERE NAME="トッテナムホットスパー";

SELECT

SELECT文を利用してデータを照会することができます。
SELECT文で見たいフィールドを選択し、
FROM文でTABLEを選択した後、WHERE文で照会したい行を選択することができます。

Syntax

SELECT フィールド名_1、フィールド名_2、···
FROM テーブル名
WHERE フィールド名_1=フィールド値_1、フィールド名_2=フィールド値_2;

TEAMテーブルにあるデータの中で、COUNTRYがArgentinaである行のみ照会してみます。

Example

SELECT * FROM TEAM
WHERE COUNTRY="Argentina";

まとめ

SQLの基礎になる文法について作成しました。私のようによく忘れる人は、ゆくり読むことでいいと思います。

Discussion