Конфигурация Solr DIH Mysql
<entity name="tw_tweet_user_merged" query="select * from tw_tweet_user_merged">
<field column="id" name="id" />
<field column="gender" name="gender" />
<entity name="tw_flag" query="select moderator_id from tw_flag where tweet_id='${tw_tweet_user_merged.id}'">
<field column="moderator_id" name="moderator_id" />
</entity>
</entity>
Это мой DIH data-config.xml,
Импортируется id, user_id, но не uid,
flagged_by в schema.xml
<field name="moderator_id" type="text_general" indexed="true" stored="true" required="false" multiValued="true"/>
2 ответа
Решение
Я считаю, что у вас есть столбец и имя поменялись местами в вашей конфигурации.
Вы также можете избавиться от конфигурации поля и изменить имя в SQL:
выберите uid как flagged_by из флага, где tweet_id='${tweets.id}'
Не знаю почему, но
<entity name="tw_tweet_user_merged" query="select * from tw_tweet_user_merged">
<field column="id" name="id" />
<field column="gender" name="gender" />
<entity name="tw_flag" query="select moderator_id as flagged from tw_flag where tweet_id='${tw_tweet_user_merged.id}'">
<field column="moderator_id" name="moderator_id" />
</entity>
</entity>
работать на меня. Просто добавив "as someColName" в подзапрос