クエリテーブル
Analytics Plus Cloudには、ワークスペースで1つ以上のテーブルを組み合わせるか、標準SQL SELECTクエリを使用して個別のレポートを作成して、テーブルを作成する方法があります。これらのデータは、テーブルと類似しており、レポート作成、データ共有、別のクエリテーブルを既存のクエリテーブル上で作成することもできます。
データセットをフィルタリングするクエリテーブルを作成し、データセットの一括処理(UNION)、データ変換、SQLクエリ関数の適用、データセットの結合等が可能です。
全般設定
クエリテーブルの作成
- クエリテーブルの作成方法
- サポートされている標準のSQL関数
- クエリテーブルで既存のクエリを修正する方法
- クエリテーブルでカラム名を変更する方法
- クエリテーブルでデータセットをマージすることはできますか?
- クエリテーブルDe1つ以上のテーブルを結合できますか?
- ルックアップカラムで2つのクエリテーブルをリンクできますか?
- クエリテーブルをクエリテーブル上で作成することはできますか?
- 集計関数をクエリテーブル上で作成することはできますか?
- クエリテーブルで実行する演算リストとは?
トラブルシュートのヒント
- アクセス時にクエリテーブルが読み込みを継続またはタイムアウトとなる理由は?
- 既存のクエリテーブルからカラムを削除する際に発生するエラーを解決するには?
- 複数の反復値を持つカラムの固有の行の値を新しいテーブルで別のカラムに変換するには?
- 異なるカラムの地域売上を1つのカラムにマージできますか?
全般設定
1. クエリテーブルとは?
クエリテーブルでは、ワークスペースの1つ以上のテーブルを組み合わせるか、標準のSQL SELECTクエリを使用して個別のレポート、テーブルを作成することができます。
2.クエリテーブル作成時の注意点は?
クエリテーブルにより詳細なレポート作成ができますが、不適切に使用するとSQLパフォーマンスに影響する場合があります。
クエリテーブルで作業するときは、以下のベストプラクティスに従います。
- クエリはシンプルし、複雑な形式は避ける。
- テーブル全体のコピーにSELECT *の使用は控える。対象のカラムのみを選択する。
- クエリテーブルを作成するときは、適切な結合条件が整っていることを確認する。結合列で値が重複すると、結果が不正確になり、パフォーマンスに影響を及ぼす可能性があります。
- デカルト結合(n*n)の使用を避け、代わりにテーブルの結合中は1*1、1*n、またはn*1関係性を目指す。
- GROUP BY句は、非集計カラムにのみ使用するようにする。
- 集計関数(例. min()、max()、sum()、count())をメトリクスカラムに使用するときは必ず、GROUP BY句をクエリの集計カラムに適用する。
- GROUP BY句の多用は避け、対象のカラムのみを選択する。
- エイリアス名はHAVING句では使用できません。
- 初回クエリにフィルターを適用して、必要なデータのみを取り込んでから、集計値を計算します。
- 大量のデータセットにDISTINCTを使用すると、パフォーマンスが低下する可能性があります。
- GROUP BYとDISTINCTの両方を、1つのSELECTクエリステートメントで使用するのは避けます。
- UNIONはDISTINCT演算を暗示的に適用するため、UNION ALL演算子をUNIONの代わりに使用することを推奨します。
- 少数のレコードに対して計算を実行します。
- 初めにデータセットを集計して、次に結合句を適用します。
- UNION句を同じテーブルを参照して使用するのは避け、代わりにCASE WHENステートメントを使用します。
- 同じ表現については、複数のOR条件よりIN句を優先します。
- 例えば、f(column) = '1' OR f(column) = '2' OR f(column) = '3'とする代わりに、f(column) IN ('1', '2', '3')を使用します。
以下のシナリオにはクエリテーブルの作成は避けます。
- 簡単な計算
簡単な計算、特に、1つのテーブルの場合、クエリテーブルを作成するのではなく、数式や計算を直接使用します。 - テーブルの結合
データの結合のみのためにクエリテーブルを作成することは避けます。Analytics Plus Cloudには、リレーショナルデータモデルの作成に自動結合機能があります。クエリテーブルは必要なときのみ使用してください。 - データのフィルタリング
複数のクエリテーブルを作成して異なるユーザーに個別データを共有するのではなく、動的な共有フィルター基準を適用します。 - 複数のユースケース
各ユースケースに個別のクエリテーブルを作成するのは避けます。例として、1つのクエリテーブル内で複数のメトリクスを計算する場合は、連結します。ワークスペースでクエリテーブルが多すぎると、システムパフォーマンスに影響を及ぼす可能性があります。 - 入れ子型クエリテーブル
Analytics Plus Cloudは複数の階層(レベル)で、他のクエリテーブルでクエリテーブルを作成することが可能ですが、不要な演算は避けるようにします。 - 未使用テーブルをクリーンアップ
未使用クエリテーブルは定期的にクリーンアップします。
3.SQL SELECTコマンドとその使用方法?
SQL(構造化問い合わせ言語)は、データベースでデータを保存、操作、取り込むための標準言語です(Oracle、SQL Server、MySQL等)。
Analytics Plus Cloudは、SQL SELECTステートメントを使用して、異なるテーブルからデータを選択してクエリテーブルを作成します。SQL SELECTについての詳細は、SQL SELECT Statementを参照してください。
4.サポートされているSQLダイアレクトは?
Analytics Plus Cloudでは、以下のSQLダイアレクトを使用して、クエリテーブルを作成できます。
Oracle、SQL Server、IBM DB2、MySQL、Sybase、Informix、PostgreSQL、ANSI SQL
クエリテーブルの作成
1.クエリテーブルの作成方法
2.サポートされている標準のSQL関数
Analytics Plus Cloudでは、SQL関数タブに表示された関数を使って、クエリテーブルを作成できます。
論理、集計、表形式、文字列、数学、日付、日付算術、日付変換、現在の日付、営業日、期間、その他の一般関数をサポートしています。
3.クエリテーブルで既存のクエリを修正する方法
クエリテーブルで使用する既存のクエリを編集することができます。手順は以下のとおりです。
-
[デザインを編集]モードで対象のクエリテーブルを開きます。
- 既存のSQLクエリで必要な編集をする、または[クエリを削除する]ボタンをクリックして、クエリ全体を削除し、新しいクエリを入力します。
- [クエリを実行]をクリックします。
生成されたテーブルは、[期待された結果]タブに表示されます。 -
[保存]をクリックして、クエリテーブルを保存します。
4.クエリテーブルでカラム名を変更する方法
Analytics Plus Cloudでは、カラムがワークスペースの他のレポートで参照されていても、エイリアス名を使って、クエリテーブルのカラム名を変更できます。
例えば、クエリテーブルで「Incoming」や「Closed」などのステータスを新たなエイリアス名として追加し、ヘルプデスクチケットをさらに確認しやすく区分します。
SELECT
"Issue ID"as 'Issue ID',
"Created"as "Time",
"Issue Type"as 'Issue Type',
'Incoming' as"Status"
FROM"Issues"
UNION
SELECT
"Issue ID"as 'Issue ID',
"Resolved"as "Time",
"Issue Type"as 'Issue Type',
'Closed' as"Status"
FROM"Issues"
WHERE "Issue is open" = 'false'

5.クエリテーブルでデータセットをマージすることはできますか?
UNION関数で、異なるテーブルで利用可能な共通のデータセットをマージできます。
例えば、以下のクエリテーブルは、プロジェクト提供(Project Given)テーブルの従業員IDと従業員名をプロジェクト提出日(Project Submitted Date)テーブルの従業員IDと従業員名と組み合わせます。
6.クエリテーブルDe1つ以上のテーブルを結合できますか?
Analytics Plus Cloudでは、以下の結合を使用してテーブルを結合できます。
7.ルックアップカラムで2つのクエリテーブルをリンクできますか?
Analytics Plus Cloudでは、ルックアップカラムを使って、2つのクエリテーブルをリンクできます。ルックアップカラムについての詳細は、カラムをルックアップに変更を参照してください。
ルックアップカラムを使ってクエリテーブルをリンクさせる手順は以下の通りです。
- 対象のクエリテーブルを開き、ルックアップカラムに変更するカラムを選択します。
-
[ルックアップカラムに変更]を右クリックして選択します。
-
表示されるダイアログで、ワークスペースで利用可能なテーブルのリストから検索するカラムを選択します。
- [保存して閉じる]をクリックします。
8.クエリテーブル上で追加のクエリテーブルを作成することはできますか?
Analytics Plus Cloudでは、Editionに応じて既存のクエリテーブル上で3または5階層のクエリテーブルを作成できます。
以下の手順に沿って、既存のクエリテーブルから新しいクエリテーブルを作成します。
- 対象のワークスペースを開きます。
-
サイドパネルの[+作成]ボタンをクリックし、[クエリテーブル]を選択します。
-
ワークスペースの既存のクエリテーブルと他のテーブルから必要なカラムを使用します。
- [クエリを実行]と[保存]をクリックして、新しいクエリテーブルを作成します。
9.集計関数をクエリテーブル上で作成することはできますか?
Analytics Plus Cloudでは、クエリテーブルに集計関数を作成することができます。
10.クエリテーブルで実行する演算リストとは?
クエリテーブルは、ワークスペースの他のテーブルと機能は似ています。Analytics Plus Cloudでは、手動作成、またはデータインポートにより作成したテーブル上で実行するすべての演算を実行することができます。
テーブル演算の詳細
トラブルシュートのヒント
1.アクセス時にクエリテーブルが読み込みを継続またはタイムアウトとなる理由は?
クエリテーブルのパフォーマンスは、テーブルの行数、使用した結合タイプ、使用した関数等に依存します。クエリテーブルの作成時の注意事項を確認してください。
問題が解消されない場合は、クエリテーブルで使用しているクエリの整理を試してください。
2.既存のクエリテーブルからカラムを削除する際に発生するエラーを解決するには?
Analytics Plus Cloudでは、カラムを使用して作成された依存するレポートがある場合、そのカラムを削除することはできません。
クエリテーブルのカラムを削除する前に、Analytics Plus Cloudは依存の有無をチェックします。依存するレポートが発見された場合、削除プロセスを中止し、確認が必要な依存項目を表示します。
3.複数の反復値を持つカラムの固有の行の値を新しいテーブルで別のカラムに変換するには?
Analytics Plus Cloudでは、カラムの特異値を分割し、PIVOT句で複数のカラムに変換することができます。PIVOTキーワードは、行を列に変換させ、入力テーブルで選択されたカラムの各固有値を出力テーブルの個別カラムに変換します。
例えば、製品カテゴリ列に対して売上データを分割してみましょう。
製品カテゴリ列の固有値は、食料雑貨、家具、文具などの複数のカラムに分割され、対応する各カラムに売上データが表示されます。
4.異なるカラムの地域売上を1つのカラムにマージできますか?
Analytics Plus Cloudでは、複数のカラムのデータをUNPIVOT句を使用して1列にマージできます。UNPIVOTキーワードは、列を行に変換させ、入力テーブルの選択された列を出力テーブルの1列の行値に変換します。
例えば、以下のテーブルの複数の地域カラムの売上データをマージしてみましょう。
東、西、南、中央列は、地域カラムに表示され、各売上地域データは売上列の対応する行に表示されます。