クエリパラメータにエイリアスを付けることは可能ですか?

クエリパラメータは、明白な理由から非常に便利です。Data Explorer クエリを技術的でないユーザーにも利用可能にする場合、その名前(アンダースコア付きの変数名であっても)に戸惑うことがあります。

クエリパラメータにエイリアスを付けて、クエリの下にわかりやすい名前で表示することはできますか?

こんにちは @jordan-violet さん :wave: これのようなことができると思いますが、これは意図したものでしょうか?

SELECT column_name AS alias_name
FROM table_name;
...

または

SELECT column_name(s)
FROM table_name AS alias_name
....

いいえ、申し訳ありません。クエリへの入力パラメータです。以下のように:

「いいね!」 1

おっと、質問を誤解していました!うーん🤔

Data Explorer でクエリを編集し、パラメータの設定方法に関する説明を追加できると思います。レポート実行時に表示されます。

「いいね!」 1

はい、それは今ありますが、営業やマーケティングなどの非常に非技術的な人々にとってこれらのレポートをわかりやすくしようとするとき、それほど洗練されていません。

実際、ツールチップ/情報アイコンの説明も定義するオプションがあれば、さらに良いでしょう。

「いいね!」 1

DEは非常に未加工です…別のUI(ウェブページ、スプレッドシート、アプリケーションのいずれであっても)を構築するのは良い考えでしょう。

素晴らしい例がGrafanaです!

Grafanaには、Data Explorerからリアルタイムでプルされたコミュニティに関するレポートのライブデモがあります。

「いいね!」 4

はい、弊社ではTableauを実行しており、Discourseの全データをエクスポートしてそこで使用できるようにしています。

しかし、プラットフォームにユーザー(社内ユーザーを含む)を呼び込むことを楽しんでいます。私は常に、可能な限り少ないツールで、過剰なツール展開を避けることを推進しています。

「いいね!」 4

FWIW、このアイデアは本当に気に入っています。「フレンドリーなラベル/プレースホルダー」があれば、良い追加機能になると思います。どうすれば実現できるかはわかりませんが。:thinking:

「いいね!」 2

たくさんの選択肢があります!

よりシンプルな解決策の1つは、現在使用しているフォーマットでオプションのラベル変数を確認することです。例:

-- [params]
-- text :user_group
-- label: 「このクエリで検索する顧客のSalesforceアカウント名。」
-- text :topic_id

正直に言うと、私は5年以上フルタイムの開発者ではなく、現在もそうではないため、現在の実装の具体的な内容や、次の提案の可能な複雑さをすべて知っているとは言えませんが、SQLクエリの先頭にFront Matterを実装していただけると素晴らしいと思います。Front Matterはyaml、toml、またはjsonにすることもでき、現在の実装よりも見栄えが良いです。私の意見では、視覚的にもオプションを追加するのが簡単に見えるでしょう。理論的なFront Matter実装のクエリは次のようになります。

---
user_id:
  description: 「このクエリで検索する顧客のSalesforceアカウント名。」
  tooltip: 「ユーザーのSalesforceアカウントから取得します。通常はメールドメインに関連付けられています。正確な一致である必要があります。」
topic_id:
  description: 「調査したいトピックのIDです。」
event_attendance_type:
  default: 0
---

SELECT ue.user_id, u.name, u.title, ue.email
FROM discourse_post_event_invitees ei
JOIN posts p ON p.id = ei.post_id
JOIN user_emails as ue ON ue.user_id = ei.user_id
JOIN users as u on ei.user_id = u.id
WHERE p.topic_id = :topic_id
AND ei.status = 0
「いいね!」 3