У меня проблема при поиске в поле Дата date_upload
В моем файле схемы есть следующая запись для поля ДАТА
<field name="date_upload" type="pdate" indexed="true" stored="true"/>
В моем data-config.xml есть следующая запись -
<dataConfig>
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
batchSize="-1"
autoReconnect="true"
socketTimeout="0"
connectTimeout="0"
encoding="UTF-8"
url="jdbc:mysql://xxx.xxx.xxx.xx:3306/news?zeroDateTimeBehavior=convertToNull"
user="admin"
password="admin"/>
<document>
<!--<entity name="news10" query="select * from news10"
deltaQuery="select posting_id from item where last_modified > '${dataimporter.last_index_time}'">
</entity>-->
<entity name="news10" pk="posting_id"
query="SELECT * FROM news10"
deltaImportQuery="SELECT * FROM news10
WHERE posting_id = '${dataimporter.delta.posting_id}'"
deltaQuery="SELECT posting_id FROM news10
WHERE last_modified > '${dataimporter.last_index_time}'">
</entity>
</document>
</dataConfig>
Следующие не работают -
fq = date_upload: NOW (не работает)
http://localhost:8983/solr/Nlive/select?fq=date_c%3ANOW&q=%3A
fq = date_upload:NOW-1DAY (не работает)
fq = date_upload: (NOW-30DAYS) (не работает)
fq = date_upload: [2018-12-01T: 00: 00: 00Z до 2019-04-17T00: 00: 00Z] (не работает)
"msg":"Invalid Date in Date Math String:'2018-12-01T:00:00:00Z'",
fq = date_upload: [2018-12-01TO 2019-04-17] Дает следующую ошибку
{
"responseHeader":{
"status":400,
"QTime":1,
"params":{
"q":"*:*",
"fq":"date_upload:[2018-12-01 TO 2019-04-17]",
"_":"1555386354522"}},
"error":{
"metadata":[
"error-class","org.apache.solr.common.SolrException",
"root-error-class","org.apache.solr.common.SolrException"],
"msg":"Invalid Date String:'2018-12-01'",
"code":400}}
Однако они дают результаты -
fq = date_upload: [* TO NOW]
http://localhost:8983/solr/Nlive/select??fq=date_c%3A%5B%20TO%20NOW%5D&q=%3A*