Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
39
Help us understand the problem. What is going on with this article?
@DisneyAladdin

MySQL入門

はじめに

環境構築はこちら
「とりあえず動作確認して学びたい!」そんな方向けのページです
データサイエンティスト育成プログラムにおいて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)

39
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
DisneyAladdin
Pythonが大好物です.

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
39
Help us understand the problem. What is going on with this article?