Tableauデータソース作成方法 ②データを縦につなげる

はじめに

前回の続きです。使用するデータは同じものです。
今回は、複数の表を 縦 につなげて新たなデータソースを作成する方法を紹介します。
考え方は SQLのUNION と同じです。(と言うか、2つめの方法はSQLです。)

環境

Tableau Desktop 2019.1
Windows10

やりたいこと

こんな表(東日本の注文表)と、、、

こんな表(西日本の注文表)を、、、

縦につなげて、1つの表にしたい。
※「サンプル – スーパーストア」を、説明用に東西で分割し、カラム名を変更しています。悪意はありません。

手順1 ユニオン

1つめの方法は、Tableauの ユニオン 機能です。
参照:データのユニオン作成

東の表の下の辺りに、西の表をドラッグアンドドロップします。

その際、「表をユニオンへドラッグ」と表示されます。表示されない場合は、ユニオンできないです。あきらめましょう。(後述)
2つのの表を縦につなげることができました。自動的にどちらの表からのデータなのかを示す列が作成されます。やや気が利くようです。

しかし、列名が異なると違うものとしてつなげてしまいます。Tableauは関西弁を理解できない。
そんな時は「マージ」機能を使用して、同じ列と見なしてもらいます。

2組をマージし、列名を変更した結果です。(ついでにどちらの表かを示す列も「分割」して整備しています。)

2つの表をユニオンでつなげることができました。
ユニオンや結合に限った話ではありませんが、「マージ」や「分割」、「ピボット」で表の形式を整えることができます。
参照:ピボット データ ([列] から [行])

ユニオンができるには制約があります。「表をユニオンへドラッグ」が表示されない時はそれに抵触していると思われます。ユニオンをするには同じ接続である必要があります。
↓ここが同じものどうし

例えば、異なるブックのエクセル・異なるファイルのスプレッドシート・異なるデータベースのテーブルなどは、ユニオンすることができません。そのため、例えば、年度ごとのエクセルブックがあったとして、それらをつなげて1つにするのは困難です。

手順2 カスタムクエリ

2つめの方法は カスタムクエリ です。SQLが分かる方向けです。
データの元がSQLを発行できるデータベースなどの場合に使用できます。
また、パブリッシュして更新して使っていく場合は、TableauServerから接続できるようにデータベースのIP/ポートが解放されている必要があります。
「新しいカスタムSQL」からSQLを記述して、表を作成することができます。
参照:カスタム SQL クエリへの接続

↓SQLが記述できるので、UNIONやJOINができます。

また、カスタムクエリで作成した表に、Tableau上でさらに表を結合することができます。( クロスデータベース結合 )例えば、MySQLの複数のテーブルをカスタムクエリでUNION(もしくはJOIN)したものに、エクセルのシートを結合することができます。
参照:異なるデータベースの表を組み合わせる

データソース作成方法の話は以上です。

関連記事になります。よろしければこちらもご覧下さい。
参照:Tableauデータソース作成方法 ①データを横につなげる | CCI TECH BLOG