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