こんにちは。
今年の桜は、もう満開になって来ておりますが、私のエンジニア人生はまだ、蕾にすらなっておりません。早く開花したい。
どうも、ハチマキです。
はじめに
ここ最近業務でSQLを叩くことが増えたので、一通り学んだことを書き残していこうと思います。
最初は、何がなんだが全くわからず、上長にSQLググってもわかりません。。
最悪の質問で、すみません。。
反省しながら、前を向いてアウトプットしていこうと思います。それでは、行きましょう!
本日の概要:業務で使った基礎的なSQL文を振り返る
- そもそもSQLとは?
- SELECT
- WHERE
- JOIN
- ON句
- in / = の使い分け
- サブクエリ
- ASC / DESC
- DISTINCT
- LIKE演算子
- 使用データベース:MySQL
SELECT・・・テーブルからデータ抽出
- 使用するテーブル
- 基礎構文
1. SELECT カラム名
FROM テーブル名;
- relativesテーブルからlast_nameカラムを取得する
2. SELECT last_name
FROM reletives;
- *を使えば全てのカラムを取得できる
3. SELECT *
FROM reletives;
WHERE・・・検索条件を絞る
- 基礎構文
1. SELECT カラム名
FROM テーブル名
WHERE 条件文;
- relativesテーブルからlast_nameカラム、gender_idカラムが2の要素を取得する
2. SELECT last_name
FROM reletives
WHERE gender_id = 2;
JOIN・・・複数テーブルを結合する(JOINには、いくつか種類あり)
- 使用するテーブル
- 基礎構文
1. SELECT カラム名
FROM テーブル名A
INNER JOIN テーブル名B
ON 結合条件 ;
- relativesテーブルとgenderテーブルを結合
2.SELECT gender_id,id
FROM reletives
INNER JOIN gender
ON relatives.gender_id = gender.id;
補足
- ON句
- 結合するための条件を指定
- in / = の使い分け
- in・・・条件が複数時に用いる
- =・・・条件が1つに限る時に用いる
ASC / DESC・・・抽出したレコードの並び変え
DISTINCT・・・重複行をまとめる
- 基礎構文
1. SELECT DISTINCT カラム名
FROM テーブル名A;