这些是由lucene索引的数据库列:
category_name / sub_category_name / classification_name / item_name / supplier
然后样本数据如下:
ALUMINUM / ORDINARY / 3" / CHINA ALUMINUM / <BLANK>
ALUMINUM / ORDINARY / 4" / USA ALUMINUM / <BLANK>
ALUMINUM / SPECIAL / 1" / PHL ALUMINUM / JKL MANUFACTURERS
ALUMINUM / PLAIN / 1" / CANADA ALUMINUM / ABC COMPANY
ALUMINUM / SPECIAL / 3"A / CHINA ALUMINUM / DEF INC
我希望我的用户在搜索栏中输入一组关键字,在所有列中搜索此关键字并显示特定结果。例如,每当用户搜索
时 "ALUMINUM 3"A CHINA"
它只会显示此记录:
ALUMINUM / SPECIAL / 3"A / CHINA ALUMINUM / DEF INC
会有一个lucene查询吗?我使用java作为我的主要语言,并使用mysql作为我的数据库。我的数据库存储引擎是InnoDB
答案 0 :(得分:0)
如果您的搜索遍历所有列,则将它们全部索引为一个字段。然后用户只需键入他们的查询,您就不需要做任何事情了。
答案 1 :(得分:0)
org.apache.lucene.queryParser。 MultiFieldQueryParser 专为此类案例而设计。