ホームページ >データベース >mysql チュートリアル >INNER JOIN を使用して複数の SQL テーブルから一致するデータを取得する方法

INNER JOIN を使用して複数の SQL テーブルから一致するデータを取得する方法

Susan Sarandon
Susan Sarandonオリジナル
2025-01-15 10:36:43451ブラウズ

How to Retrieve Matching Data from Multiple SQL Tables Using INNER JOIN?

INNER JOIN を使用した複数の SQL テーブル間で一致するデータの効率的な取得

データベース管理では、複数のテーブルから関連データを抽出することが頻繁に行われます。 INNER JOIN 句は強力なソリューションを提供し、異なるテーブルの指定された列に一致する値が存在する行のみを返します。

2 つのテーブル、tbl_facilitators (facilIDfacilLnamefacilFname を含む) と tbl_facilitatorClasses (classIDclassNameprimeFacilsecondFacil を含む) について考えます。 私たちの目標は、クラス名と、主進行役と副進行役の両方の名前 (姓と名) を取得することです。

次の INNER JOIN クエリはこれを実現します:

<code class="language-sql">SELECT 
    tbl_facilitatorClasses.className,
    tbl_facilitators.facilLname AS primaryFLName,
    tbl_facilitators.facilFname AS primaryFFName,
    tbl_facilitators2.facilLname AS secondaryFLName,
    tbl_facilitators2.facilFname AS secondaryFFName
FROM 
    tbl_facilitatorClasses
INNER JOIN 
    tbl_facilitators ON tbl_facilitatorClasses.primeFacil = tbl_facilitators.facilID
INNER JOIN 
    tbl_facilitators AS tbl_facilitators2 ON tbl_facilitatorClasses.secondFacil = tbl_facilitators2.facilID;</code>

名前の競合を避けるために、tbl_facilitatorstbl_facilitators2 としてエイリアスすることに注意してください。 クエリは 3 つの条件で結合します:

  1. primeFaciltbl_facilitatorClasses は、facilIDtbl_facilitators と一致します。
  2. secondFaciltbl_facilitatorClasses は、facilIDtbl_facilitators2 と一致します。
  3. classNametbl_facilitatorClassesから選択されています。

このアプローチでは、2 つのテーブルのデータを結合することで必要な情報を効果的に取得し、クラスとファシリテーターの詳細を統合したビューを提供します。

以上がINNER JOIN を使用して複数の SQL テーブルから一致するデータを取得する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。