Google スプレッドシートのクエリ: 2 つのテーブルを結合する方法
多くの場合、Google スプレッドシートのQUERY()関数を使用して 2 つのテーブルを結合することができます。
残念ながら、 JOIN()関数はQUERY()関数内に存在しませんが、回避策として次の式を使用して 2 つのテーブルを結合できます。
=ArrayFormula(
{
A2:B6 ,
vlookup( A2:A6 , D2:E6 ,COLUMN(Indirect(" R1C2:R1C "&COLUMNS( D2:E6 ),0)),0)
}
)
この特定の式は、 A2:B6およびD2:E6の範囲にあるテーブルに対して左結合を実行します。
次の例は、この公式を実際に使用する方法を示しています。
例: Google スプレッドシートで 2 つのテーブルを結合する
Google スプレッドシートに、さまざまなバスケットボール チームに関する情報を含む次の 2 つのテーブルがあるとします。
次の式を使用して、両方のテーブルで左結合を実行し、左側のテーブルの各チームのチーム名、ポイント、アシストを含むテーブルを返すことができます。
=ArrayFormula(
{
A2:B6 ,
vlookup( A2:A6 , D2:E6 ,COLUMN(Indirect(" R1C2:R1C "&COLUMNS( D2:E6 ),0)),0)
}
)
次のスクリーンショットは、この式を実際に使用する方法を示しています。
結果は、左側の表にチーム名、各チームのポイント、アシストを含む表になることに注意してください。
注: 左側のテーブルのチームが右側のテーブルに存在しない場合、結果のテーブルの [アシスト] 列に値#N/Aが返されます。
追加リソース
次のチュートリアルでは、Google スプレッドシートで他の一般的なタスクを実行する方法を説明します。
Google スプレッドシートのクエリ: 別のシートからクエリを実行する方法
Google スプレッドシートのクエリ: 文字列を含む行を選択する
Google スプレッドシート クエリ: Group By の使用方法