1
1

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.

【いくつ知ってる?】MySQLでCRUD操作のクエリまとめ【超基本】

Last updated at Posted at 2020-11-21



最近MySQLにどっぷり浸かって学習しているのですが、ある程度知識のストックもできたのでアウトプットがてら、超基本的なCRUD操作のクエリについて、まとめて行きたいと思います。


目次

  • CRUDについて
  • Create
  • Read
  • Update
  • Delete

CRUDについて

まず初めに、**CRUD(クラッド)**とは目次でも書きましたが、

  • Create(作成)
  • Read(参照)
  • Update(更新)
  • Delete(削除)

と言う、Webサービスなどで最も基本的な機能の事を指します。

例えばツイッターなんかでも、ツイートを作成し、それをフォロワーなどが見る(参照)ことができます。そして、プロフィールなどの部分を随時更新する事ができ、不要なツイートやアカウントは削除する事ができます。

このような基本的な機能の事を総称して生まれたのが、CRUDと言う言葉になります。次からは、このCRUD操作をMySQLのクエリでどのように行っていくのかを、説明していこうと思います。



Create

CREATE句

-- EXampleデータベースを作成。
CREATE DATABASE EXample;

-- Exampleテーブルの作成。
CREATE TABLE Example
  (
		id INT(10) not null auto_increment primary key,
        name VARCHAR(255) not null,
        age INT(3)
  );

テーブルの作成について、細かい事は省きますが、括弧の中は1行につき、1カラム(縦列)の設定を行っています。表で書くとこんな感じですね。

id name age



INSERT句

-- Exampleテーブルにレコードを追加。
INSERT INTO Example VALUES (1, "Abe", 32);

レコード(横列)の作成(追加)。カラムの並びに応じて、カンマ区切りでデータを記述します。実行後はこんな感じですね。

id name age
1 Abe 32

複数行を一気にいれる場合はこちら。

-- Exampleテーブルに複数レコードを追加。
INSERT INTO Example VALUES
		(2, "Ide", 37),
        (3, "Hide", 21);

実行後はこんな感じです。

id name age
1 Abe 32
2 Ide 37
3 Hide 21





Read

SHOW句

-- データベースの一覧
SHOW DATABASES;

-- テーブルの一覧
SHOW TABLES;

-- Exampleテーブルのカラム情報一覧
SHOW COLUMNS FROM Example;

個人的にはテーブルの一覧を確認する事が多いですね。ECサイトのDBとかになるとテーブルが10個近くあったりするので、いちいち覚えてられません。(笑)



SELECT句

-- Exampleテーブルの全カラムを取得。
SELECT * FROM Example;

-- Exampleテーブルのnameカラムを取得。
SELECT name FROM Example;

-- Exampleテーブルのidカラム、nameカラムを取得。
SELECT id, name FROM Example;

最も基本的なSELECT句の使い方です。全カラム情報の取得なんかは、よく使います。



WHERE句

-- Exampleテーブルで、ageが32の全カラムを取得。
SELECT * FROM Example WHERE age = 32;

WHERE句は主に条件指定をする際に使用します。情報を取得する時は、条件を絞って取得することがほとんどなので、こちらは超頻出ですね。

実行して取得できるのは、こんな感じですね。

id name age
1 Abe 32





Update

UPDATE句

-- Exampleテーブルでageカラムを、全て50に変更。
UPDATE Example SET age = 50;

-- Exampleテーブルでidが1のageカラムを、50に変更。
UPDATE Example SET age = 50 WHERE id = 1;

使うのは下の方ですね。特定のレコードの情報を更新したい時なんかに使用。あと紹介しといてあれですが、上はほぼ使わないです。(笑)





Delete

DELETE句

-- Exampleテーブルの全レコードを削除。(テーブル自体は残る)
DELETE FROM Example;

-- Exampleテーブルの id=1 に一致したレコードを削除。
DELETE FROM Example WHERE id=1;

こちらも使うのは下の方ですね。上は実行しようとすると、逆にセーフティ設定で弾かれることがあります。



DROP句

-- Exampleテーブルをオブジェクトごと完全に削除。
DROP TABLE Example;

-- EXampleデータベースの削除。
DROP DATABASE EXample;

こちらは不要になったテーブルやデータベースを削除したい時に使いますね。ただ、一度構築して運用を始めたら、余程の事がない限りは使わないかと。





まとめ

基本的なCRUD操作は、以上の内容である程度できるかと。ただ、SELECT句に関しては、WHERE句以外にも使えるクエリが沢山あります。(曖昧な検索をするLIKE句など)

気になる方は是非、本格的に学習してみてください!

最後まで読んでいただき、ありがとうございました!





筆者:yuki|学習10日目で初案件獲得→現在はフルスタックエンジニア転職に向けて学習中
Qiita:https://qiita.com/yuki4839
Twitter:https://twitter.com/yuki35522891

1
1
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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?