LoginSignup
19
39

More than 3 years have passed since last update.

MySQL入門

Last updated at Posted at 2019-03-17

はじめに

環境構築はこちら
「とりあえず動作確認して学びたい!」そんな方向けのページです
データサイエンティスト育成プログラムにおいてIT講師を務めました
大文字でも小文字でも影響はない
が,SQLではなんか大文字の風潮があるので大文字で記述することにします

初級編

MySQL呼び出し

(ルートなのでユーザ,パスワードなし)

$ mysql -u root

データベース参照


mysql> SHOW DATABASES;

+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

データベース作成

データベース名「chintai」を作成

mysql> CREATE DATABASE chintai;

データベースが作られたか確認します.できてますね

+--------------------+
| Database           |
+--------------------+
| chintai            |
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+

データベース選択


mysql> USE chintai;

テーブル作成

データベース「chintai」に「suumo」というテーブルを作成します.


mysql> CREATE TABLE chintai. suumo(id INT(20) NOT NULL PRIMARY KEY AUTO_INCREMENT , name VARCHAR(100) , price INT(20) , toilet VARCHAR(100) , station VARCHAR(100) , type VARCHAR(100));
id name price toilet station type
説明 ID(重複なし) 物件名 家賃 トイレ・バス別(separated)か 最寄駅 木造・鉄筋コンクリ
INT VARCHAR INT VARCHAR VARCHAR VARCHAR

NOT NULL PRIMARY KEY AUTO_INCREMENTをつけると,指定しなくても自動でID(INT型)が付与されます.
・カラム「ID」なしに中身を追加することはできない訳です.
・顧客のデータ管理などにおいて,異なるお客様のIDが同じIDにタグ付いたら大変なことになっちゃいますよね笑
・今はまだカラム(の名前と型)を宣言しただけで,このテーブルの中身は空っぽです.

データベースに存在するテーブル一覧を参照

mysql> show tables;
+-------------------+
| Tables_in_chintai |
+-------------------+
| suumo             |
+-------------------+

chintaiというデータベースの中にsuumoというテーブルが存在していることになります

テーブルの中身の追加

作ったカラムに対応したValue(中身)を追加します


mysql> INSERT INTO suumo VALUES (1,'宇都宮タワマン',75000,'S','宇都宮','RC');

または


mysql> INSERT INTO suumo (id, name, price, toilet, station, type) VALUES (1,'宇都宮タワマン', 75000,'S','宇都宮','RC');

テーブルの中身参照

SELECT * FROM suumo;
+----+-----------------------+-------+--------+-----------+------+
| id | name                  | price | toilet | station   | type |
+----+-----------------------+-------+--------+-----------+------+
|  1 |    宇都宮タワマン        | 75000 |  S     |  宇都宮    | RC   |
+----+-----------------------+-------+--------+-----------+------+

・S: Separated(トイレ・バス別)
・NS: Not Separated(トイレ・バス一緒)
・RC: Reinforced Concrete(鉄筋コンクリ)
・W: Wood(木造)

てなかんじで自分なりのsuumo作ってみた
sql1.png

テーブルの削除

DROP TABLE suumo;

データベースの削除


DROP DATABASE chintai;

中級編

・具体例の方がわかりやすいと思うので初級編で作ったsuumo使ってやります
suumo
sql1.png

idprice(家賃)のカラムのみ表示したい

mysql> SELECT id, price FROM suumo;

sql2.png

price(家賃)の安い順に表示したい

mysql> SELECT * FROM suumo ORDER BY price;

実際のSUUMOとかでも「家賃の安い順」みたいなボタン押しますよね!
あんなかんじです
sql3.png

今後も追加予定(2019/03)

19
39
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
19
39