go on program

SQLって何?基礎知識をご紹介

2020/07/31

SQL文は、データベースに指示命令をだす言語の一つでよく使われています。

サーバーについて

サーバーはデータを格納する場所です。
サーバーの中で、データベースが作られていて、いろんなテーブルが保存されています。テーブルの中にテーブル、レコード、カラム、主キー、型などの用語があります。

主キー

主キーとは、レコードが重複することなく識別するためのカラムです。
主キーをどのカラムにするのかを指定にidが使われます。

文字コード

文字コードを指定してます。UTF-8の場合が多いです。

エンジン名

MyISAMとInnoDBなどを指定できます。

SQL文を使って追加する方法

SQL文を使ってデータベースを作成し、データを入力してみましょう。

データベースの追加

サーバに「CREATE DATABASE」を使ってデータベースを作成します。
「CHARACTER SET UTF8」で文字コードを設定できます。

CREATE DATABASE “データベース名:任意” CHARACTER SET UTF8;

テーブルの作成

データベース作成後、「CREATE TABLE」を使ってテーブルを作成します。

CREATE TABLE “テーブル名:任意” (
  カラム名(id) データ型(varchar),
  カラム名(name) データ型(varchar),
  ・・・など
  PRIMARY KEY (主キー)
) ENGINE=エンジン名 DEFAULT CHARSET= 文字コード;

レコードを挿入

テーブルにレコードを挿入する場合、INSERT文を使用します。

INSERT INTO テーブル名(カラム名・・・・) VALUES ( 値・・・・ );

絞り込み検索

絞り込み検索には「SELECT」文を使います。

全てのデータを表示させる。

SELECT * from テーブル名;

指定のカラムだけを表示させる

SELECT カラム名 from テーブル名;

(複数の場合)
SELECT カラム名,カラム名 from テーブル名;

絞り込み検索

絞り込む場合、「WHERE」を使います。

(完全一致の場合)
SELECT * from テーブル名 WHERE カラム名 = ‘カラムの文言’;

(部分一致の場合)
SELECT * from テーブル名 WHERE カラム名 like ‘%カラムの文言%’;

レコードの更新方法

レコードを更新する場合、UPDATE文を使います。
下記のSET 内容で値が変更されます。どのカラムの値を変更するかは絞り込みの条件で決まります。重複していない主キーを使うとよいでしょう。

UPDATE テーブル名 SET カラム名 = ‘値’ WHERE 条件(主キー)

レコードの削除

レコードの削除の場合、DELETE文を使います。
削除する場合は、テーブル名の確認など慎重に行いましょう。
条件(WHERE)を忘れずにつけるようにしましょう。

DELETE FROM テーブル名 WHERE 条件(主キー)

データベースの情報収集

COUNT関数でレコード数を確認する。

select count(*) from テーブル名;

テーブルの連結

LEFT OUTER JOIN句を使って、テーブルを連結してみましょう。
紐付けたいテーブルを「LEFT OUTER JOIN」を付けて、「ON」で紐付けたいカラムを設定すると理解しやすいと思います。
カラムの後に、WHEREを続けて設定すれば絞り込みで、必要なカラムだけを紐付けて表示させることができます。

SELECT カラム名 FROM 「テーブル名A」 LEFT OUTER JOIN 「テーブル名B」 ON「テーブル名A」.カラム名 = 「テーブル名B」.カラム名

おさらい

関連記事
RELATED