首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【solr字段说明】Solr查询详解

这节重点是讲Solr的查询相关的知识点 一、 查询参数说明 在做solr查询的时候,solr提供了很多参数来扩展它自身的强大功能!以下是使用频率最高的一些参数! ...如果查询所有*:* ,根据指定字段查询(Name:张三 AND Address:北京) fq - (filter query)过虑查询,作用:在q查询符合结果中同时是fq查询符合的,例如:q=Name:...官方的技术文档以及一些大神的博文日志,这里只是抛砖引玉】 二、 Solr运算符 1. “:” 指定字段查指定值,如返回所有值*:* 2. “?”...:  修饰符 字段名:查询关键词 AND/OR/NOT 修饰符 字段名:查询关键词 三、 Solr查询语法 1.最普通的查询,比如查询姓张的人( Name:张),如果是精准性搜索相当于SQL SERVER...:搜索条件),比如模糊查询( Name:张 OR Name:李 )单个字段多条件搜索不建议这样写,一般建议是在单个字段里进行条件筛选,如( Name:张 OR 李),多个字段查询(Name:张 + Address

2.4K30

“禁止用 select * 作为查询字段列表”落地指南

一、背景 《阿里巴巴 Java 开发手册》 MySQL 数据库部分,ORM 映射部分,谈到: 【强制】 在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。...说明: 1)增加查询分析器解析成本。 2)增减字段容易与 resultMap 配置不一致。 3)无用字段增加网络消耗,尤其是 text 类型的字段。...resultMap="resultMap"> SELECT * FROM user WHERE id = #{id} select> ---- 正例: String getEmailById(Long..."> SELECT email FROM user WHERE id = #{id} select> 正如手册上所说的,这种写法带来的好处是: 1)增加查询分析器解析成本。...[1] 如果查询条件走索引,查询的字段里不含大字段,查询单个字段和查询多个字段的性能差异微乎其微几乎可以忽略不计。

95610
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    “禁止用 select * 作为查询字段列表”落地指南

    一、背景 《阿里巴巴 Java 开发手册》 MySQL 数据库部分,ORM 映射部分,谈到: 【强制】 在表查询中,一律不要使用 * 作为查询的字段列表,需要哪些字段必须明确写明。...说明: 1)增加查询分析器解析成本。 2)增减字段容易与 resultMap 配置不一致。 3)无用字段增加网络消耗,尤其是 text 类型的字段。...resultMap="resultMap"> SELECT * FROM user WHERE id = #{id} select> 正例: String getEmailById(Long id...SELECT email FROM user WHERE id = #{id} select> 正如手册上所说的,这种写法带来的好处是: 1)增加查询分析器解析成本。...[1] 如果查询条件走索引,查询的字段里不含大字段,查询单个字段和查询多个字段的性能差异微乎其微几乎可以忽略不计。

    1K20

    三、Solr管理控制台(二)

    characterEncoding=utf8" user="root" password="root"/> select...:Solr管理控制台提供的查询索引数据的工具,这里暂时先介绍常用的几个参数,后续有机会再补充其他的参数说明 下面对各个参数进行下解释 q:查询条件,常用的列举如下 查询所属有文档: : 查询id...rows:分页获取数据时用到,start:从第几条记录开始,rows:从starts位置获取几条数据 fl:字段列表,获取查询的结果集字段列表 df:默认查询字段 hl:高亮查询使用 facet...indexed:这个字段是否能被索引 multiValued:这个字段是否能存储多值 required:这个字段是否是每个文档必须要保存的字段 2.Add Dynamic Field:添加动态字段...,界面如下: 动态字段类似添加字段 3.Add Copy Field:添加拷贝字段,拷贝字段主要是将索引文档的多个字段映射到该字段,后续可通过查询该字段实现多个字段的查询功能,配置界面如下:

    1.6K10

    Solr与MySQL查询性能对比

    上面的"QTime"只是根据索引查询的时间,如果要从solr服务端获取查询到的结果集,solr需要读取stored的字段(磁盘IO),再经过Http传输到本地(网络IO),这两者比较耗时,特别是磁盘IO...时间对比: 查询条件 时间 MySQL(无索引) 30s MySQL(有索引) 2s Solrj(select查询) 12s 如何优化?...偶然看到一个回答,solr默认的查询使用的是"/select" request handler,可以用"/export" request handler来export结果集,看看solr对它的说明: It's...下面是Solr使用“/select”和“/export”的速度对比。...时间对比: 查询条件 时间 MySQL(无索引) 30s MySQL(有索引) 2s Solrj(select查询) 12s Solrj(export查询) 2s 项目中如果用分页查询,就用select

    1.4K30

    Solr 笔记 2-core 创建后的数据导入

    --以下的字段column属性对应数据库中字段名称,name是对应solr这边配置的名称; 注意id,默认名称即为id,表示solr这边一条数据的主键,为需要的字段建立索引关系...查询中; 数据库驱动包:因为配置中用到MySQL数据库,因此需要导入MySQL数据库驱动包,从网上找到驱动包后,将其放入solr-xxx/webapps/solr/WEB-INF/lib文件夹中; 配置...-- name属性为引入字段在solr中的名称。...如果为false,则该字段不能作为条件查询出来; stored:表示是在solr中显示,如果这里设置为false,将会在solr中查询不到。...PS :进行条件查询时,需要修改solrconfig.xml中的默认检索,将其修改成你想要检索的字段,如下图; ?

    83030

    Solr7使用Oracle数据源导入+中文分词

    * from bless"查询语句--> deltaImportQuery="SELECT * FROM userinfo where spuid='${dih.delta.spuid}'...在菜Thread Dump下方有一个下拉框,选择刚新建的Core,点击Schema 里的Add field菜单,name输入刚才配置的查询语句中的某个字段(假设该字段为字符串类型),点击field type...回到左侧菜单,选择Query,点击Execute Query,如果右侧查询出数据,恭喜你,你已经配置好了; 可根据第八步继续添加自己想要的字段,重复9 10步骤; 二、中文分词 Solr7之前好像大部分使用的是...如果需要设置单字段索引,而不每个字段都去检索,比如有数据字段author,title,keywords,body,搜索的时候想搜索这四个字段,可以使用copyField字段,具体方法,在managed-schema...Solr7中已经不再支持defaultSearchField默认搜索字段了。需要设置默认搜索字段需要在solrconfig.xml中配置, ?

    80720

    Solr core创建后的数据导入

    --以下的字段column属性对应数据库中字段名称,name是对应solr这边配置的名称; 注意id,默认名称即为id,表示solr这边一条数据的主键,为需要的字段建立索引关系...查询中; 数据库驱动包:因为配置中用到MySQL数据库,因此需要导入MySQL数据库驱动包,从网上找到驱动包后,将其放入solr-xxx/webapps/solr/WEB-INF/lib文件夹中; 配置...-- name属性为引入字段在solr中的名称。...如果为false,则该字段不能作为条件查询出来; stored:表示是在solr中显示,如果这里设置为false,将会在solr中查询不到。...,在上一步的Query中q选项中输入要查询的条件,然后直接Execute Query就可以符合查询条件的数据,如下图所说; PS :进行条件查询时,需要修改solrconfig.xml中的默认检索,将其修改成你想要检索的字段

    88310

    SolrCloud6.1.0之SQL查询测试

    表达式来以Map-Reduce的方式运行 (5)在(4)中运行的聚合操作,还可以以原生的JSON Facet 方式,来优化提升性能 (6)SQL特性目前仅支持SolrCloud集群方式,单机方式并不支持...Solr,目前只能查,暂不支持更新,修改,删除等操作 依赖jar包: $SOLR_HOME/dist/solrj-libs 所有的jar $SOLR_HOME/dist/solr-solrj-<...(2)理解map_reduce 和 facet两种聚合模式 A: map_reduce 模式,支持任意多字段的聚合查询,不受限制,但性能稍低 测试环境5个shard+3个副本 测试数据,必须大于...,如果你不加,要么你就会发现,你的查询可能会莫名其妙的报错 这个时候问题的原因大部分是跟DocValue有关的, Solr6要求,所有不加的limit查询的字段,必须全部是DocValue激活的 字段,...至于为什么必须要激活DocValue字段才能进行all字段提取查询,主要目的还是为了性能,想了解DocValue可以 参考散仙之前的文章:http://qindongliang.iteye.com/blog

    1.2K50

    SolrLucene优劣势分析

    (13)solr或者lucene 目前不支持快速的“局部”更新。这里是指对document的某个字段的快速更新,目前是需要传入完整的document,然后add进去。...如果document 的不变字段来源多个源的话,IO、计算资源有些浪费,如果更新量不大还好。—当然可以对更新的单独开辟内存来处理,而更大的那个基本索引不去动他。 (14)solr不支持第三方条件过滤。...访问请求不支持定时和定量控制,索引垂直扩容(增加索引副本,支撑更多访问请求)、索引水平扩容(增加索引分区数,支撑更多数据量,平衡性能和空间压力) (23) solr自容错还不够强大。...最常见的就是更新时间、上传时间等,占了非常大的term比例 (28)multivalue 字段,实质是建立多个相同域名的字段,并不是一个域。对于域值很多内容的话,只好和在一起保存。...任务交给应用自己斟酌,实际上solr单节点对于命中超过100w的,并多字段排序的时候,cache失效时性能非常糟糕的。

    1.2K40
    领券