低ヒット検索の見直し方
会社が見つからない、ヒットが少ない、条件を絞りすぎたときの見直し手順です。
このページの内容8項目
ヒットが少ないときは、データ不足より先に検索条件の設計を疑ってください。 1 社の特定なのか、会社群の探索なのか、求人 / 建設など source-native 行なのかで入口を分けます。
1社が見つからないとき(company_not_found)
company_not_found の多くは、自由入力の文字列をそのまま Company Card / Signals に渡したことが原因です。まず sf search で company_id を解決します。
悪い例:
sf company トヨタ --json
良い例:
sf search トヨタ --json sf company jpx_7203 --json
直し方:
sf search <query> --jsonを実行します。companies[].company.company_idを確認します。- 確定した
company_idで Company Card / Signals を呼びます。
よくある原因:
- Company Card / Signals に自由入力を直接渡している
- 社名が曖昧で、候補が複数ある
- 証券コードや domain を知っているのに使っていない
- 検索条件に部署名や説明文を含めている
候補が複数出た場合は、社名だけで確定せず、証券コード、法人番号、domain のどれかで再検索します。
それでも見つからないとき
検索語を次の順で見直します。
- 4-6 桁の上場コードで試す
- 正式社名より短い通称で試す
website_domainで試す
domain 検索の例:
sf search global.toyota --json
どこで落ちたかを特定する場合は、送信した query / filters と gaps[].code を確認し、社名、証券コード、法人番号、domain のどれで一致を試みて外れたかを見ます。
Claude Code / Codex にやらせるとき
company_not_found が返ったら、次の 1 手を固定します。
sf search <query> --json
CLI は error.suggested_next_commands にこの候補を返します。 先に会社を解決してから進めば、同じ失敗を繰り返しにくくなります。
会社群が弱いとき
悪い例:
sf search "東証プライムでCRMもMAも生成AIもやっていて営業効率化に積極的な会社" --json
良い例:
sf search "生成AI" --listing-status listed --json sf search "生成AI" --industry-33-code 5250 --json sf search "生成AI" --market-segment prime --json
見直し方:
- 検索条件を短くします。
- 地域、業種、市場区分、採用、建設許可などの条件を 1 つずつ足します。
gaps[]が出たら完了扱いにせず、条件を分けます。meta.returned_companiesとcompanies[].reasonを見て候補を判断します。
テーマ語は、最初に 1-3 語へ削ります。生成AI CRM、AI営業支援、iPaaS、データ連携、機械学習、サイバーセキュリティ のような短い語から入り、業種や市場区分は追加条件として足します。
sf search "iPaaS" --json sf search "iPaaS" --industry-33-code 5250 --json sf search "iPaaS" --listing-status listed --json
複合テーマで 0 件や低 relevance になる場合は、テーマを分けます。
sf search "生成AI" --json sf search "CRM" --json
理由を確認したい場合は、返却された company_id ごとに Company Card / observations を読みます。
財務条件が混ざるとき
売上、純利益、総資産、純資産、営業CF、受取利息、受取配当金などの条件は、sf search の自然文 q に残さないでください。agent / backend が company_query.v1 を作り、sf query で実行します。
悪い例:
sf search "上場企業で売上1000億円以上" --json
良い例:
sf query --file company-query.json --json
0 件や低ヒットに見える場合は、まず query.gaps[] と query.warnings[] に unsupported / weak / hosted_table_pending がないかを確認します。unsupported や needs_human を silent 0 件にしないでください。 matched_count: 0 の読み方、executor ごとの確認 key、復旧手順は 財務条件の Company Query が正本です。
source-native 行から始めるとき
sf job search "AIエンジニア" --job-location 大阪 --json sf construction search --prefecture 大阪府 --json
見直し方:
- 求人勤務地と会社所在地を混ぜない
- 会社に進む場合は
company_link.company_idを使う - 未リンク行は silent 0 件にせず、source-native 行として扱う
まず広く、あとで絞る
sf search "生成AI" --json sf search "CRM" --json sf search "生成AI CRM" --industry-33-code 5250 --listing-status listed --json
自然文は会社名または 2〜5 語の短い検索語へ分けて sf search "<query>" --json に渡してください。所在地、業種、上場区分は option で明示します。genai、llm、ai_agent は EDINET 側のテーマ alias として扱われます。
現時点で含まれないもの
external research を queue として再検索に回す automation は、現時点の公開 product core ではありません。 今は、検索条件を短くする、条件を分ける、sf search と source-native search を混ぜない、の 3 つが最も効果的です。