0
我有卡桑德拉表如下數據:DSE卡桑德拉SOLR查詢與空格
cqlsh:test> SELECT * FROM test1 WHERE solr_query='{"q":"address:*"}';
name | address | age | solr_query
-------+------------------------------+-----+------------
test3 | road3 united states | 23 | null
test4 | road 123 canada | 23 | null
test2 | street2 united states | 22 | null
test1 | 123 california united states | 21 | null
test5 | 123 Texas united states | 23 | null
與架構:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<schema name="TestSolrSchema" version="1.5">
<types>
<fieldType class="org.apache.solr.schema.StrField" name="StrField"/>
<fieldType class="org.apache.solr.schema.TrieIntField" name="TrieIntField"/>
</types>
<fields>
<field docValues="true" indexed="true" multiValued="false" name="name" stored="true" type="StrField"/>
<field docValues="true" indexed="true" multiValued="false" name="address" stored="true" type="StrField"/>
<field docValues="true" indexed="true" multiValued="false" name="age" stored="true" type="TrieIntField"/>
</fields>
<uniqueKey>name</uniqueKey>
</schema>
與空間字符串的完美搭配工作 cqlsh:測試> SELECT * FROM test1 WHERE solr_query ='{「q」:「address:\」123 california united states \「」}';
name | address | age | solr_query
-------+------------------------------+-----+------------
test1 | 123 california united states | 21 | null
但是,如果我想搜索以「123」開始的字符串(帶空格的字符串的正則表達式),它會失敗。 (試過其他solr query: {"q":"address:\"123\"*"})
cqlsh:test> SELECT * FROM test1 WHERE solr_query='{"q":"address:\"123\""}';
name | address | age | solr_query
------+---------+-----+------------
(0 rows)
有沒有辦法讓正則表達式的Solr的字符串字段類型來完成與空間?
如果你不介意我問,你是怎麼用Solr和Cassandra正確集成的,到目前爲止還找不到有用的教程。 – trynacode