【发布时间】:2017-02-27 09:35:24
【问题描述】:
我正在使用 Spring-Data-Solr,我有三个表并尝试从这些表中获取所有数据。这是表的关系:
汽车桌:
ID, NAME, PRICE, DISTRICT_ID(FK), CITY_ID(FK)
区表:
ID(PK), DISTRICT_NAME
城市表:
ID(PK), CITY_NAME
在 data-config.xml 中,我尝试使用以下 sql 获取 Car 表中的所有数据和记录:
<dataConfig>
<dataSource driver="org.hsqldb.jdbcDriver" url="jdbc:hsqldb:/temp/example/ex" user="sa" />
<document>
<entity name="city" query="select * from city">
<field column="id" name="city_id" />
<field column="name" name="city_name" />
<entity name="cars" query="select * from cars where city_id='${city.id}'">
<field column="id" name="id" />
<field column="name" name="name" />
<entity name="district" query="select * from district where id = '${cars.district_id}'">
<field column="id" name="district_id" />
<field column="name" name="district_name" />
</entity>
</entity>
</entity>
</document>
当我在 Solr Admin 上执行时,我只收到了 2 条记录,尽管我的汽车表中有 11 条记录。
如何获取 Car 表中的所有(11 条记录)?谢谢
【问题讨论】:
-
应该有cars.id...或cars.district_id?跨度> -
嗨,@AbhijitBashetti:谢谢,你能告诉我更多细节吗..
-
它对你有用吗?你想分享什么细节?您可以使用连接而不是多个查询来进行单个查询...
-
我使用了 join 并且成功了,谢谢
-
我应该将其标记/添加为答案吗?
标签: java mysql solr lucene spring-data