テーブル同士で同名のカラムがある場合
SQLでは、複数のテーブルで同じカラムがあった場合は、テーブル名とカラム名をドットで繋げて指定することで判別します。
同名カラム判別のPOINT🤗
テーブル①とテーブル②をの同名カラムをそれぞれに指定する書き方は下記の通りです。
テーブル名.カラム名
※ SELECTやWHEREなどにも使えます
文法解釈の順序(その2)
今回学習したJOINを踏まえて前回の「文法解釈の順序」をアップデートするとk
文法解釈の順序のPOINT🤗
① SQLの構文の書き方は下記の通りです。
SELECT 集計関数
FROM テーブル名
JOIN FROMのテーブルに繋げるテーブル名
ON 紐付け先の指定
WHERE 条件
GROUP BY カラム名,カラム名・・・
HAVING 条件(グループ化後)
ORDER BY データの整列
LIMIT データの取得数② 上記の構文の解釈の順番は下記の通りです。
① FROM データを取得するテーブル名を指定します。 ② JOIN・ON テーブルの結合・紐付け先の指定 ③ WHERE テーブル名から条件を指定し対象を絞ります。 ④ GROUP BY WHEREで絞られた条件の中で、グループを分けをします。 ⑤ HAVING グループ分けした後のデータに対して、条件を指定し対象を絞ります。 ⑥ SELECT グループ化したカラム名と集計関数(COUNT、SUM、AVG 、MAX、MIN)の摘要結果を取得します。 ⑦ ORDER BY 取得したデータの整列をする(DESC・・降順 ASC・・・昇順 ) ⑧ LIMIT 条件に合うデータを取得する数 ※ SQLではコードの上から順に適用される訳ではないので気をつけましょう
実際の例文をみてみましょう😄♫
データベース【purchases】
id | human | name | category | price | date | prefecture_id |
1 | けんと | キンちゃんカレー | 食費 | 500 | 2022-04-01 | 1 |
2 | ゆーた | おにぎり(キンちゃん味) | 食費 | 150 | 2022-04-01 | 2 |
3 | けんと | キンちゃんアイス | 食費 | 200 | 2022-06-16 | 1 |
4 | けんと | CDキンちゃん | 音楽 | 1000 | 2022-06-16 | 3 |
データベース【prefecture】
id | name |
1 | 神奈川県 |
2 | 埼玉県 |
3 | 群馬県 |
4 | 茨城県 |
5 | 栃木県 |
【テキストエディタ】
SELECT human, purchases.name , prefecture.name
FROM purchases
JOIN prefecture
ON purchases.prefecture_id = prefecture.id
;
【実行結果】
human | name | name |
けんと | キンちゃんカレー | 神奈川県 |
ゆーた | おにぎり(キンちゃん味) | 埼玉県 |
けんと | キンちゃんアイス | 神奈川県 |
けんと | CDキンちゃん | 群馬県 |
学習の感想
blog作成時間6:00スタート 6:45エンド
所要時間45分
今日はJOINにおけるカラム名の特定を学習しました😊
一つ思ったのは、SELECTで「テーブル名.カラム名」と指定しても実行結果ではカラム名のみが表示されるんだなーってところです🐶
せっかくそれぞれに指定しても完成した表が同じカラム名だと読みにくいのではないかと思いました🔰
なので、実務ではASを用いて表示名を変えるなどの作業も必要になってくるのかーって妄想した今日この頃です😽
そうそう、年末までに10キログラム痩せることを目標に、最近ダイエットも始めました🔥
それでわっっ
いつか誰かの誰かのためになりますように☺️✨