SQL vs Alteryx

Alteryx ブログ TOP画像

ノンプログラミングで分析を行うことが出来るAlteryx。
ドラッグ&ドロップで手軽に分析を行うことが出来る
というのは、初心者にはありがたいですが、
上級者には今まで使っていたツールのほうが使いやすい。
ということもあると思います。
SQLユーザーの方必見の、
Alteryx各機能とSQL句とのの比較記事を
ご紹介いたします。

こんにちは、PR担当Saoriです。

”Alteryx”は、処理ツールをドラッグ&ドロップし、線をつなげていくことで「ワークフロー」という処理の履歴を構築し、再生ボタンを押すことで、処理が実行できるため、とても分かりやすいのが
強みのTableauととても相性の良い統計ツール

「使いやすいのは分かった。」「これなら初心者でも使えそうだ。」
ただ、「慣れ親しんだSQLのほうが圧倒的に使いやすい(と思っているんだ)」
という方へ、SQLユーザーの方必見記事です。

今日は、Alteryx社の公式HPで紹介されている記事
「The Alteryx Guide for SQL Users」
より、一部を抜粋・翻訳し、SQLとAlteryx の対比をご紹介いたします。

SQLユーザーのためのAlteryxガイド

各SQLの句に対し、Alteryxでは何が対応するかを図解で表示してまいります。

SQL例文

よく使うような例文です。SELECT/FROM/WHERE/GROUP BY/HAVING/ORDERBY など
SQLではおなじみの式が詰まっているクエリ文です。

Alteryx SQL 例文 画像

[SQL]SELECT句/FROM句/AS

SQL文で、SELECT句やFROM句、ASに対応するAlteryxのツールは以下の2つです。

Input Data Tool
Input Data Tool Alteryx アイコン画像
Alteryxから、データにアクセスするには、
Input Data Toolをキャンバスにドラッグ&ドロップした後に、ファイルやデータベースを探し、選択します。
Select Tool
Select Tool Alteryx アイコン画像

Select Toolを使用すると、以下のことが可能です。
・データタイプの変更(SQLでいう”CAST”句)
・使うフィールドを選択または選択解除
・フィールド名の変更(SQLでいう”AS”句)
The Alteryx Guide for SQL Users 抜粋画像1 Select AS CAST

[SQL]JOIN

JOIN Tool
lteryx JOIN Tool アイコン画像 2
AlteryxのJoin Toolは、複数のデータセットを簡単に組み合わせることができます。

2つのデータにかかわる主キーを選択(JOIN)し、Alteryxは自動的に以下の3つの結果を返します。
<INNER JOIN>(J):ソース表(L)の列と表の列を結合して、共通フィールドに基づいて一致するレコードを結合します(R)。
<LEFT JOIN>(L):元のテーブル(L)のレコードで、テーブルに一致するものが見つからない(R)レコードです。
<RIGHT JOIN>(R):結合する表のレコード(R)で、ソース表(L)に一致するものが見つからなかった。
以下のように概念を表示してくれるので初心者でもわかり易いです。
The Alteryx Guide for SQL Users JOIN画像

Union Tool
Union Tool Alteryx アイコン画像
Union Toolは、フィールド名または各列の位置に基づいてレコードの複数のセットを組み合わせることができます。
各レコードセットの列ヘッダーの順序を簡単に変更して一致させることができます。

なお、<LEFT OUTER JOIN>は、JoinToolを使い出力された結果のうち、LEFTとINNERをUnionToolでまとめて結合して生成します。
Alteryx JOIN UNION INNER JOIN 作成フロー画像

[SQL]WHERE句

Filter Tool
Filter Tool Alteryx アイコン画像
特定の基準に基づいてレコードを制限したい場合は、Filter Toolを使用します。
フィルタリングは、単純な比較から複雑な条件文まで、何でも使用できます。
The Alteryx Guide for SQL Users Filter画像

[SQL]HAVING

Filter Tool
Filter Tool Alteryx アイコン画像
HAVINGもFilter Toolで実現が可能です。
CustomFilterを使うとより複雑な条件設定が可能になります。
ここでは、平均合計が1000以上のレコードのみを選択しています。

The Alteryx Guide for SQL Users Filter 2

※Alteryxは、真(True)だけではなく偽(False)も出力されるため、両方のデータをクリックひとつで見ることが出来るのはとても便利です。

[SQL] GROUP BY/AVG

Summarize Tool
Summarize Tool Alteryx アイコン画像
Alteryxでは、Summarize Toolを使用して、複数のレコードにわたるデータを収集し、集計関数を適用し、結果を1つ以上のフィールドでグループ化します。
この例では、国(イギリス、ドイツなど)ごとにグループ化し、国あたりの合計金額を平均(AVG)しています。
The Alteryx Guide for SQL Users Summarize画像

[SQL]ORDER BY

Sort Tool
Sort Tool Alteryx アイコン画像
必要な方法でデータを並べ替えることができます。
列の名前を選択し、昇順または降順のいずれかを選択します。
この例では、平均合計金額を降順でソートしています。
The Alteryx Guide for SQL Users Sort画像

[SQL]CROSS JOIN

基本的なCROSS JOINのSQL文です。
The Alteryx Guide for SQL Users CROSS JOIN画像
AppendFielidsTool
AppendFields Tool Alteryx アイコン画像
AppendFielidsToolを使用すると、ソース入力のフィールドをターゲット入力のすべてのレコードに追加できます。
ターゲット入力の各レコードは、ソース入力の各レコードごとに複製されます。
ここでは、すべての流通センタレコードを各得意先レコードに追加します。
The Alteryx Guide for SQL Users AppendFields画像

また、Sort Tool使用すると、必要な方法でデータを並べ替えることができます。
Sort Tool
Sort Tool Alteryx アイコン画像
列の名前を選択し、昇順または降順のいずれかを選択します。この例では、平均合計金額を降順でソートしています。
The Alteryx Guide for SQL Users Sort画像

[SQL]WHERE BETWEEN

データに対しWHERE句と BETWEENを使い、いつからいつまで、とデータを抽出するためのクエリ文になります。
The Alteryx Guide for SQL Users WhereBetween画像
Filter Tool
Filter Tool Alteryx アイコン画像
特定の範囲内のフィールド値を持つレコードにレコードを限定するには、Filter Toolを使用します。
この例では、12月1〜31日、2016年の間の注文日を単にフィルタリングします。
赤枠で囲ったように、CustomFilterの欄を使い、エクセルのように条件を特定していきます。

The Alteryx Guide for SQL Users WhereBetween Filter Tool

[SQL]WHERE IN

一般的な WHEREIN 構文の画像です。
The Alteryx Guide for SQL Users Where In
Filter Tool
Filter Tool Alteryx アイコン画像
AlteryxのFilter Toolを使用して実行されます。
ここでは、国がアメリカまたはイギリスのお客様を選択しています。
The Alteryx Guide for SQL Users Filter画像 Custom2

[SQL]DISTINCT

一般的なDISTINCT文の例と出力結果の画像です。
The Alteryx Guide for SQL Users SELECT DISTINCT
Unique Tool
Unique Tool Alteryx アイコン画像
AlteryxではUnique Toolを利用します。
ユーザーが選択したフィールドに基づいて、データを重複と非重複の2つの結果を出力させることが可能です。
The Alteryx Guide for SQL Users SELECT Unique Tool画像

まとめ

私自身、SQLとAlteryxを両方使って仕事をしていますが、
初心者は分析の基礎や、データベースに関することを
Alteryxから学んだ方が分かりやすいように感じます。

SQL文はがりがり書ける!という人にはもどかしいかもしれませんが、
Alteryxで見本を見せてもらうとイメージが涌きやすく、
説明や引き継ぎが簡単にできた。

という事例も伺います。

また、InputDataToolやIn-DB機能の中に、SQL文が書けるスペースもあるため、
書いて結果を確認してからAlteryxでワークフローを作る、ということもできます。

こういった”翻訳”のような比較ページがあると安心して新しいツールにも取り組めると思いますので、
Alteryxを使っていて慣れないなと思うことがありましたらご一読いただければより使いやすくなると思います。

その他にもSQLとAlteryxの使い方比較を掲載しております。記事本文(全編英語)はこちらを参照ください。

毎週水曜日は相談会を開催しています、どうぞお気軽にご相談ください、詳細はこちら

 

関連記事

  1. 機械学習/AIを手軽に実現する為の-DataRobot/Alteryx…

  2. Alteryx Desinger 2018.4リニューアル トップ画面2

    リリース情報(Alteryx Desinger 2018.4)|デザイ…

  3. コマンドラインを使ってAlteryxを動かしてみる

  4. ANALYTICS GALLERY alteryx

    Alteryx Analytics Galleryの紹介(Big Qu…

  5. Alteryx アイキャッチ画像

    Alteryx ロードショー & ユーザーグループ会参加レポート

  6. データ連携に便利なAPI Alteryxで使えるツールの紹介

フリートライアル(14日間の無料試用)