MySQLで複数のテーブルを結合してデータを取得する方法

MySQLを使用してデータベースを構築する場合、複数のテーブルにデータが分散している場合があります。このとき、これらのテーブルを結合して必要なデータを取得する方法を理解することは重要です。以下に、MySQLとそのライブラリを使用して複数のテーブルを結合するサンプルコードを示します。

サンプルデータベースの構造

まず、サンプルのデータベース構造を考えてみましょう。例として、以下の2つのテーブルがあると仮定します。

users テーブル

CREATE TABLE users (
    id INT PRIMARY KEY,
    name VARCHAR(255),
    email VARCHAR(255)
);

INSERT INTO users (id, name, email) VALUES
(1, 'John Doe', '[email protected]'),
(2, 'Jane Smith', '[email protected]');

orders テーブル

CREATE TABLE orders (
    order_id INT PRIMARY KEY,
    user_id INT,
    product_name VARCHAR(255),
    amount DECIMAL(10, 2)
);

INSERT INTO orders (order_id, user_id, product_name, amount) VALUES
(101, 1, 'Product A', 50.00),
(102, 1, 'Product B', 30.00),
(103, 2, 'Product C', 75.50);

テーブルの結合クエリ

次に、上記のテーブルを結合して、ユーザーの名前とその注文の情報を取得するクエリを示します。

SELECT users.name, orders.order_id, orders.product_name, orders.amount
FROM users
JOIN orders ON users.id = orders.user_id;

このクエリは、users テーブルと orders テーブルを user_id で結合し、ユーザーの名前と注文の情報を取得します。

このように、MySQLを使用して複数のテーブルを結合することで、関連するデータを一つのクエリで取得することができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です