ホームページ >データベース >mysql チュートリアル >MySQL サブクエリから複数の列を取得する方法: 仮想テーブルと JOIN 構文?
MySQL サブクエリからの複数のカラムの選択
MySQL では、サブクエリを使用して同じテーブルから複数のカラムを取得するのが難しい場合があります。この問題に対処するために、さまざまなアプローチを検討してみましょう。
仮想テーブルの使用
複数のサブクエリを作成する代わりに、サブクエリを使用して仮想テーブルを作成できます。このアプローチの構文は次のとおりです。
SELECT * FROM (SELECT col1, col2, ... FROM original_table) AS virtual_table
結合でこの仮想テーブルを使用すると、単一のクエリで指定されたテーブルから複数の列を取得できます。
コード例:
SELECT a.attr, b.id, b.trans, b.lang FROM attribute a JOIN ( SELECT id, translation AS trans, language AS lang, attribute FROM attributeTranslation ) AS b ON (a.id = b.attribute AND b.lang = 1)
JOIN 構文の使用
もう 1 つのオプションは、JOIN 構文を使用して、元のテーブルと仮想テーブルを含む複数のテーブルを結合することです。この方法により、結合されたテーブルから複数の列を取得できます。
コード例:
SELECT a.attr, b.id, b.trans, b.lang FROM attribute a JOIN attributeTranslation b ON (a.id = b.attribute AND b.lang = 1)
以上がMySQL サブクエリから複数の列を取得する方法: 仮想テーブルと JOIN 構文?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。