[ThoughtSpot]キーワードを使い倒す[日本語キーワード]

# はじめに
ThoughtSpotの検索方法の特徴として「キーワード」があります。
どんなキーワードがあるの？
日本語でのキーワードってどんな感じ？
キーワードで何ができるの？
そもそもキーワードって何？
まとめました。

# そもそもキーワードって？
「グラフを表示するための補助ワード」だと考えるのが一番わかりやすいかなと思います。
ThoughtSpotはグラフ化したい内容を検索バーに打ち込んでいくわけですが、例えば「上位5件だけ表示したい」「去年と今年の分だけ表示したい」など＋αの定義付けができるのがキーワードになります。

ではどんなキーワードがあるか、さっそくいってみよー。

# ★日本語環境でのキーワードについて（2025.2.27追記）
ver10.6.0より、日本語設定していても、英語表記でのキーワードが扱えるようになりました。つまり日本語表記でも英語表記でもどっちも使えるということです。
←日本語キーワードを使った例　英語キーワードを使った例→
![画像3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/16eb500e-ea6d-4253-8dad-4a26e8034881.png)

よって以下の記事は「英語のキーワードがイマイチよくわからない」「それでも日本語でキーワード使いたい！」という方向けの内容になります。

# キーワード一覧
あくまでも抜粋ということでご了承ください。順次更新していきます。
## ●トップ n／ボトム n
上位n、下位nを表示するためのキーワード。数値の前に半角スペースが入るのがミソです。
またトップのあとに数値を入力しない場合は、デフォルトでトップ10表示になります。
```
トップ 5
```
![画像1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/c9d408bd-66e3-b78b-92f5-d49e1f288871.png)
### 応用１「で」
上記のトップ5表示に、更に「取扱商品」のセグメントを増やして、その上で上位5社を表示したい場合は「で（in）」を使います。
```
取引先名 で(金額 取引先名 トップ 5)
```
![画像3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/fa589480-0d84-51a7-0275-2e14ab9f638c.png)

※注意
もしフィルターをいくつもかけた状態で「で（in）」を使うと、括弧の位置によって思っていもいない結果になることがあります。そういう場合はおとなしくrank関数を使うことをおススメします。


### 応用２「それぞれに対して」「のために」
各取引先の中で、取扱商品のトップ5を出したい場合。その場合は「それぞれに対して（by）」「のために（for each）」を使います。
```
トップ 5 それぞれに対して 取引先名 のために 金額 
```
![画像2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/013dd2de-fef1-4324-5aa2-45e2e252c1b3.png)
取引先は全件表示されて、その取引先の中での取扱商品トップ5、という検索方法になります。

## ●トップ n ランク付け
測定値（measure）が複数あるグラフの場合、どの測定値に対してのトップn表示なのかを指定するときに「ランク付け（ranked by）」を使います。
```
トップ 5 ランク付け 金額 
```
![画像4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/52b08c95-1746-736b-5b68-7195708e8542.png)
画像で言うと「金額」「目標金額」の測定値でグラフ化していますが、そのうち「金額」の方でのトップ5を表示しています。

## ●次で始まる／次で始まらない
測定値にフィルターをかけるようなキーワードです。
『[フィルターをかけたい測定値]＋次で始まる＋'フィルターをかけたい内容'』という順番で指定します。
特定のワードから始まるようにフィルターをかけるのであれば「次で始まる」、特定のワードから始まるものを除外するようにフィルターをかけるのであれば「次で始まらない」になります。
```
商品 次で始まる 'デ' 金額 商品 
```
![画像10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/e61840a4-fb6f-daea-59f5-c3e64b9942e5.png)

## ●次で終了する／次で終了しない
使い方は「次で始まる」キーワードと同じです。
特定のワードで終了するようフィルターをかけるのであれば「次で終了する」、特定のワードから終了するものを除外するようにフィルターをかけるのであれば「次で終了しない」になります。（「次で終わる」じゃないんかーい）
```
商品 次で終了する 'ン' 金額 商品 
```
![画像11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/8c103afd-f595-704d-6689-6c98ba7a26f9.png)

## ●次を含む／次を含まない
使い方は「次で始まる」キーワードと同じです。
特定のワードを含むようフィルターをかけるのであれば「次を含む」、特定のワードを含むものを除外するのであれば「次を含まない」になります。
下図のようにフィルター内容とイコールでも検索の対象になります。
```
商品 次を含む 'もも' 金額 商品
```
![画像13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/e497a0c5-862f-267c-3110-deb71de33c2c.png)

### 応用「または」
この「次で始まる」「次で終了する」「次を含む」系のキーワードでのフィルターは、ひらがな／カタカナを区別します（日本語のヤヤコシイところ）。ひらがなとカタカナ両方をフィルターしたいときは「または」で指定することが可能です。
```
商品 次を含む 'ん' または 'ン' 金額 商品
```
![画像17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/f8ea7940-9332-20d7-15b4-0ad19382806f.png)

### 「類似する」は使えない？
同じようなテキストフィルター系で「次と類似する／次と類似しない」があります。
雰囲気的には「次を含む」と同じような感覚になりますが、例えば「商品 次と類似する 'もも' 金額」と検索しても回答は出てきません。英単語と日本語の違いですねー。
日本語検索では「類似する」は使うことがないキーワードな気がします。

## ●成長率…まで…
成長率を計算するキーワードです。
**わざわざ計算式を書かなくてもキーワードで成長率が出せてしまうんです（大声）。**
ポイントとしては「成長率」だけではキーワードとして認識してくれず、「成長率 （測定値） まで」まで入力してようやくキーワードとして認識してくれます。
検索バーに打っている途中で不安になっても最後までキーワード打ち切ってください。
```
成長率 金額 まで 計上日 月単位
```
![画像9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/c669107f-b4d3-1845-94ad-a8fbef71f096.png)
上記の例では毎月の成長率を出していますが、日次の成長率、年次の成長率であれば「月単位」の部分を「日単位」「年単位」に変更することで対応できます。
同様に「四半期単位」「週単位」もできます。

## ●カウント／一意のカウント
数をカウントするキーワードです。数値系（測定値）の項目にもテキスト系（属性）の項目にも使えます。
例えば画像左のような6件のデータがある場合、「カウント」キーワードであればただの件数カウントなので行数分の6という結果となり（画像真ん中）、「一意のカウント」キーワードであれば重複を除いた4件という取引先数の結果（画像右）となります。
```
カウント 関連取引先
```
```
一意のカウント 関連取引先
```
![画像18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/a0b4a346-f88e-08be-aecd-9998489f9fbb.png)


## 日付関係
以降は日付関係です。日付は項目フィルターから期間をいろいろ変更できますが、フィルターからでは指定できない日付の指定もキーワードで可能です。
※画像の例ではだいたい会計年度が4月はじまりのカスタムカレンダーを使用しています。

## ●来年／今年／去年／2 年前／3 年前／……n 年前
例えば今年度分を含め過去5年分を常に表示したい場合、日付フィルターで過去n年（月／日）でフィルターをかけると、今年度（今月／今日）は表示されません。そういうときはキーワードで指定できます。
「年前」形式で指定する場合は数字と「年前」の間に半角スペースが入ります。
```
来年 今年 去年 2 年前 3 年前 4 年前
```
![画像7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/d405a09c-1976-fd00-cd4b-e5885dc08266.png)

### 応用１　月単位の場合
```
来月 今月 先月 2 ヵ月前 3 ヵ月前 4 ヵ月前
```
「ヵ」の部分に関しては「か」「ヵ」「カ」「ヶ」「ケ」どのパターンでも対応しています（すげぇ）。


### 応用２　日単位の場合
```
明日 今日 昨日 2 日前 3 日前 4 日前
```

### 応用３　過去ではなく未来の日付を指定する場合
「n 年前」「n ヵ月前」ができるなら「n 年後」「n ヵ月後」などの未来分もキーワードでできるだろう、と思ったら、未来分はどうやら指定できないみたいです。
なので関数を使って指定します。方法は[こちらの記事](https://qiita.com/shiisaa/items/4a6f18af089207cb38e2#%EF%BC%93%E6%95%B0%E5%BC%8F%E3%81%A8%E3%83%91%E3%83%A9%E3%83%A1%E3%83%BC%E3%82%BF%E3%82%92%E4%BD%BF%E3%81%86 "[ThoughtSpot]日付にフィルターをかける方法まとめ")参照です。


## ●対（vs）
比較するときに使うキーワードです。
比較したい対象 vs 比較したい対象 という形式、かつ、比較に使う測定値を指定します。例えば「都道府県」という項目を持っているデータで、京都府と大阪府それぞれの金額を比較させたい場合、このようになります。
```
京都府 vs 大阪府 金額
```
![画像5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/24030778-ced0-f99d-e988-64fe0a03c42e.png)
この場合「京都府」と「大阪府」が比較したい対象、「金額」が比較に使う測定値になります。

また前述した日付キーワードも使うことができます。
昨年度の金額と今年度の金額を比較したい場合はこのようになります。

```
去年 vs 今年 金額
```
![画像6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1658354/c0302efc-126d-1b95-3e9a-a52b396cfc15.png)

とはいえvsの良さがわからないなーという方はぜひ[こちらの記事](https://qiita.com/shiisaa/items/86564e80a0c2242ff763 "[ThoughtSpot]キーワード「VS」を使ってみる")を参考にしてみてください。



# おわりに
まだまだ終わらないです。
もっと解説したいキーワードたくさんあります。
順次更新していきます。