0

私は Solr を初めて使用します。実際、Solr Index Search メソッドを使用して mysql からデータを検索しようとしています。単一のデータを検索すると、インデックスに関連する複数のデータが表示されます。

例:

会社のテーブル:-

Id  company_name    company_id  company_emp
1      Xx               1              Xx
2      yy               2              Yy

empDetail:-

Id  company_id  company_empA    emp_city    emp_mobile
1      1               dd              ss       32455
2      1               cc              cc       344444
3      1               zz              zz       56778998

ここではOneToMany、Company テーブルと Employee Detail テーブルの間の関係を使用しました。ssから検索するemp_Cityと、関連するすべてのデータCompany_idのみではなく、ss

現在の結果はこのように表示されます

id  company_id  company_name    company_empA    emp_city
1      1           Xx             dd              ss
2      1           Xx             cc              cc
3      1           Xx             zz              zz

上記の結果は、 にemp_city関連するすべての値を示していますCompany_id。しかし、私は取得したいだけssです。

Data-config.xml Solr構成ファイルを次のように構成しました

<document name="company1">
    <entity name="companys" pk="id" query="SELECT * FROM company"  deltaImportQuery="select * from company where id='${dataimporter.delta.id}'" >
        <field column="company_id" name="id" />
        <field column=" company_name " name=" company_name " />
        <field column=" company_emp " name=" company_emp " />
        <field column="company_id" name="companyId"/>


<entity name="companyDetails" pk="id " query="select * from company_detail where company_id='${companys.company_id}' ORDER BY '${companys.company_id}'" 
             parentDeltaQuery="select id from company_detail where company_id=${companys.company_id}">
        <field column="company_id" name="id"/>
            <field column="company_id" name="com_companyId"/>
            <field column="company_empA" name="com_companyemp"/>
                <field column=" emp_city " name=" emp_city" />
                <field column=" emp_mobile " name=" emp_mobile "/>
            </entity>
</entity>

問題はこのクエリにあると思いますが、見つけることができませんでした。親切に解決してください。前もって感謝します。

4

0 に答える 0