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.

[初学者] SQLとは?

Last updated at Posted at 2021-02-04

SQL「StructuredQueryLanguage」

RDBの操作を行う言語です。
データベースに対して命令(クエリ)を行います。
SQL(エスキューエル)とはクエリを書くための言語とも言えます。
命令は大きく以下の3つです。
データを定義する「DDL(Data Definition Language)」
データを操作する「DML(Data Manipulation Language)」
データを制御する「DCL (Data Control Language)」

 DDL
データを定義するSQLです。以下のような作成/更新/削除などの命令文があります。

命令 機能
CREATE データベースやテーブルの作成
ALTER データベースやテーブルの更新
DROP データベースやテーブルの削除

 DML
データを操作するSQLです。以下のような登録/更新/削除/検索などの命令文があります。

命令 機能
INSERT データの登録
UPDATE データの更新
DELETE データの削除
SELECT データの検索

SELECT,  FROM

「SELECT」は「どのカラム(縦の列)を取得するか」を指定します。
SELECT name「nameカラムのデータを取得」

「FROM」は「どのテーブルから取得するか」を指定します。
FROM users 「usersテーブルからデータを取得」

SELECT name, email  「複数カラムの指定」はカンマで区切ります。
SELECT *       「全てのカラム指定」にはアスタリスクを用います。

WHERE

「WHERE」「どのレコード(横の行)を取得するか」
WHERE name = "鈴木"; 「usersテーブル、nameカラム,、鈴木レコード」
文の最後はセミコロンをつけてください。

SQLでも演算子が、下記2文のように使えます。
WHERE price >= 100        「値段が1000以上」
WHERE created_at <= "2020-04-15" 「2020年4月15日以前」

特定の文字を含むデータを取得したい場合は、「〜のような」という意味を持つ「LIKE演算子」を使います。

「ワイルドカード」とは、どんな文字列にも一致することを指す記号です。LIKE演算子では「%」をワイルドカードとして扱います。

WHERE name LIKE "%鈴木%";    「鈴木が文字列内に含まれるデータを取得」

WHERE name LIKE "鈴木%";     「鈴木で始まるデータを取得」   前方一致

WHERE name LIKE "%鈴木";     「鈴木で終わるデータを取得」   後方一致

「NOT演算子」は「NOT」を置くことで、指定の条件を満たさないデータを取得することが可能です。

WHERE NOT name = "鈴木";      「スズキではないデータを取得」

WHERE NOT name LIKE "%鈴木%";   「鈴木を含まないデータを取得」

「IS NULL」「カラム名 IS NULL」で、  「指定したカラムがNULLであるデータ」を取得する

「NULLではないデータ」を取得する場合は「IS NOT NULL」を用います。「カラム名 IS NOT NULL」

WHERE name is NULL;    「nameカラムがnullのレコードを取得」

WHERE name is NOT NULL;  「nameカラムがnullではないレコードを取得」

AND演算子 WHEREに複数の条件を指定することができます。「WHERE 条件1 AND 条件2」のようにすることで、条件1と条件2を共に満たすデータを検索することができます。

WHERE name = "鈴木"
AND age = 17;

OR演算子は、AND演算子と同様に、複数の条件を扱います。「WHERE 条件1 OR 条件2」のようにすることで、条件1または条件2のどちらかを満たすデータを検索することができます。

WHERE name = "鈴木"
OR age = 17;

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?