INNER JOINとLEFT JOINの違いを理解する
2023.04.09
error この記事は最終更新日から1年以上が経過しています。
テーブル結合 inner join と left join の性質の違い。
以下の二つのテーブルがあるとする。
user_id | name |
---|---|
1 | Tatsuya |
2 | Nanaka |
3 | Homura |
user_id | favorite |
---|---|
1 | 珈琲 |
1 | チョコ |
2 | 緑茶 |
上記二つのテーブルを inner join した場合、
select user_table.user_id,user_table.name,favorite_table.favorite from user_table inner join user_table.user_id = favorite_table.user_id;
実行結果は以下のようになる。
user_id | name | favorite |
---|---|---|
1 | Tatsuya | 珈琲 |
1 | Tatsuya | チョコ |
2 | Nanaka | 緑茶 |
つまり、 favorite_table にデータの存在しない user_id = 3 の値は取得しない。
一方、 left join の場合、
select user_table.user_id,user_table.name,favorite_table.favorite from user_table left join user_table.user_id = favorite_table.user_id;
実行結果は以下。
user_id | name | favorite |
---|---|---|
1 | Tatsuya | 珈琲 |
1 | Tatsuya | チョコ |
2 | Nanaka | 緑茶 |
3 | Homura |
こちらの場合は、 favorite_table にデータの存在しない user_id = 3 の値も取得できる。
PHPとOpenAI APIで簡単なチャットシステムのコードを書いてみた
2023.04.13
PHPとOpenAI APIを使ってチャットボットを作成し、ユーザーとAIが対話できる基本的なプログラムを紹介します。サーバーに保存したチャット履歴を基に、APIから取得したレスポンスをデータベースに記録し、チャット形式で対話を進めていくサンプルコードを用意しました。
MySQL OpenAI API PHP
PHPでMySQLに接続してデータを取得する基本テンプレ
2023.04.11
PHPでMySQLに接続し、データを取得する基本的な手順のテンプレ。mysqli拡張を使用したデータベース接続から、SQLクエリ実行、結果の取得までの処理を掲載しています。
MySQL PHP
perlでMySQLを操作する基本的なテンプレート
2023.04.08
perlでMySQLデータベースを操作するための基本的なテンプレートを紹介します。DBIモジュールを使用してデータベースに接続し、SQLクエリを実行する方法を解説。
MySQL Perl
MySQLのデータベースバックアップと復元の基本操作
2011.01.08
MySQLデータベースのバックアップと復元方法を、mysqldumpコマンドを使った簡単な手順で解説します。データベースの保護や移行を行うための基本的な操作を、実際のコマンド例を通じて紹介。
MySQL