Data Explorerチュートリアル - パート1 - 最初のクエリの作成

:discourse: Discourseサイトからデータを抽出したいが、どこから始めればよいかわからないですか? ここがまさにその場所です!これは、Data Explorerに初めて触れる初心者向けの#tutorial::tagガイドです。SQLとData Explorerの使用方法にすでに慣れている場合は、このトピックを読む必要はないでしょう。代わりに、#data-reporting::categoryカテゴリを確認することをお勧めします。

このガイドの目標は、Data Explorerを使用してDiscourseサイトのレポートを作成する方法の基本的な理解を深めることです。これは、Data Explorerチュートリアルシリーズの最初の部分です。

Data Explorerとは何ですか?

Data Explorerは、データベースに対してSQLクエリを実行し、結果をエクスポートできるDiscourseプラグインです。Discourseサイトからデータを抽出し、分析するための強力なツールです。

Data Explorerを使用する前に、サイトにインストールする必要があります。これに関するヘルプが必要な場合は、https://meta.discourse.org/t/install-plugins-in-discourse/19157を参照してください。

:discourse: Data Explorerは、DiscourseのBusinessおよびEnterpriseホストプランにプリインストールされています。

Data Explorerをインストールしたら、SQLクエリの実行に使用を開始できます。

最初のSQLクエリの作成

Data Explorerに慣れるための最良の方法は、実際に体験することです!

最初のクエリを作成することから始めましょう。

  1. サイトの管理画面に移動し、「プラグイン」タブをクリックします。
  2. Data Explorerプラグインを見つけてクリックします。
  3. +ボタンをクリックして、新しいSQLクエリを作成するためのテキストボックスとボタンを表示します。
  4. クエリの名前を入力します。
  5. 「新規作成」をクリックしてクエリを作成します。

ここから最初のクエリの構築を開始できます。

デフォルトの新規クエリページ:

Hello World

最初のクエリとして、次のレポートを作成しましょう:サイトで最も表示されたトピック :sparkles:

この作成方法を考えながら、topicsテーブルからtitleviewsフィールドを選択することから始めましょう。

SELECT
    title, views
FROM
    topics

これにより、サイト上のすべてのトピックとその表示回数のリストが表示されます。実行をクリックして、これがどのように機能するかを確認してください。

結果の並べ替え

これらの結果を見ると、順序付けられていないことに気づくでしょう。これは、結果を希望どおりに並べ替えるためにORDER BYステートメントを明示的に使用する必要があるためです。今すぐ追加しましょう。

SELECT
    title, views
FROM
    topics
ORDER BY views DESC

もう一度「実行」をクリックして、何が変わったかを確認しましょう。

できました。結果は表示回数で降順に並べ替えられました!

結果のフォーマット

このクエリで、トピックの名前を直接クリックしてトピックに移動できたら便利だと思いませんか? フォーマットされたテーブル結果でそれができるのは幸運です!

これを実際に確認するために、クエリのtitleセクションをid as topic_idに変更しましょう。

SELECT
    id as topic_id,
    views
FROM
    topics
ORDER BY views DESC

これで、トピックのタイトルがハイパーリンクとして表示されるようになりました!

:discourse: トピックの横に表示されている数字は、そのトピックの返信数です。

パラメータとWHEREステートメントの追加

クエリへの最後の追加として、クエリを変更して、X件以上の表示回数のトピックのみを表示できるようにしましょう。これを行うには、パラメータWHEREステートメントを追加する必要があります。パラメータにはint(整数)を使用し、WHEREステートメントは、最小表示回数よりも多い表示回数のトピックのみが表示されるように結果をフィルタリングします。

-- [params]
-- int :min_views= 10

SELECT
    id as topic_id,
    views
FROM
    topics
WHERE views > :min_views
ORDER BY views DESC

このクエリを実行すると、結果に表示されるためにトピックが必要とする最小表示回数を変更するために使用できるmin_viewsパラメータが表示されます。

まとめ

これらの手順を踏むことで、Data Explorerクエリがどのように構築されるかについてのアイデアが得られたことを願っています。しかし、このトピックでは表面をかすめたにすぎません!

Data Explorer、そしてより一般的にはSQLは、非常に、非常に広範なトピックです。Data ExplorerとSQLクエリについてさらに詳しく知りたい場合は、このシリーズの他のトピックを読むことを強くお勧めします。

このシリーズの他のトピック

「いいね!」 11