例如有两个业务表:文章表,评论表 。

场景: 一个文章可以由多个人评论。

创建两个core,一个core叫article,一个叫comment。
article实例的schema.xml文件中定义几个简单的属性:id、title、content、createtime,relationId

<field name="id" type="long" multiValued="false" indexed="true" required="true" stored="true"/>

<field name="title" type="text_general_rev" indexed="true" stored="true"/>

<field name="content" type="text_general_rev" indexed="true" stored="true"/>

<field name="create" type="long" indexed="true" stored="true"/>

<field name="relationId" type="string" indexed="true" stored="true"/>

comment实例的schmea.xml文件中定义几个简单的属性:id,articleId,userName,createtime,commentContent

<field name="id" type="long" multiValued="false" indexed="true" required="true" stored="true"/>

<field name="articleId" type="string" indexed="true" stored="true"/>

<field name="userName" type="string" indexed="true" stored="true"/>

<field name="createtime" type="long" indexed="true" stored="true"/>

<field name="commentContent" type="text_general_rev" indexed="true" stored="true"/>

ok,从上面可以看出文章的relationId在评论里面articleId属性相关联

查询张三评论过的文章

http://localhost:8088/solr/article/select?q={!join fromIndex=article toIndex=comment from=relationId to=articleId} userName:"张三"

写了这么多,{!join fromIndex=article toIndex=comment from=relationId to=articleId}这个里面才是最主要的东西。类似sql :select  * from tableA a left join tableB b on a.id = b.realtionId 对应过去应该就了解了对应位置是什么东西了。

solr之高级查询--联表 join查询的更多相关文章

  1. 【Django】Django 如何实现 如下 联表 JOIN 查询?

    SQL语句: select distinct a.device_hash, sum(b.cmn_merge_count) from (select distinct device_hash from ...

  2. Django 如何实现 如下 联表 JOIN 查询?

    SQL语句: select distinct a.device_hash, sum(b.cmn_merge_count) from (select distinct device_hash from ...

  3. 基于Solr的多表join查询加速方法

    前言 DT时代对平台或商家来说最有价值的就是数据了,在大数据时代数据呈现出数据量大,数据的维度多的特点,用户会使用多维度随意组合条件快速召回数据.数据处理业务场景需要实时性,需要能够快速精准的获得到需 ...

  4. springBootJpa 联表分页查询总数不准的问题

    问题情景: 在联表查询时 ``` // 两张表关联查询 Join<Project, Plan> planJoin = root.join("plans", JoinTy ...

  5. Mysql 拼接字段查询语句和join查询拼接和时间查询

    个人平时记录的,有点乱 1.修改时间字段,如果时间字段的类型是date或者是datetime类型的 update 表名 set 时间字段 = DATE_FORMAT(NOW(),'%Y-%m-%d % ...

  6. 序列化表单为json对象,datagrid带额外参提交一次查询 后台用Spring data JPA 实现带条件的分页查询 多表关联查询

    查询窗口中可以设置很多查询条件 表单中输入的内容转为datagrid的load方法所需的查询条件向原请求地址再次提出新的查询,将结果显示在datagrid中 转换方法看代码注释 <td cols ...

  7. 数据库联表统计查询 Group by & INNER JOIN

    原数据表 视频信息表  tab_video_info 播放记录表  tab_play_record 需求 统计播放量(已经开始播放)最多的前20个视频: SELECT a.video_id, SUM( ...

  8. SQL SERVER跨数据库服务,联表进行查询

    SELECT * FROM 数据库A..表A a, 数据库B..表B b WHERE a.field=b.field

  9. mysql 数据操作 多表查询 多表连接查询 笛卡尔积

    1 交叉连接:不适用任何匹配条件.生成笛卡尔积 所有员工都和四个部门 做了对应关系 mysql> select * from employee,department; +----+------- ...

随机推荐

  1. php 添加时间戳

    <?php $tomorrow = mktime(,,,date(,date("Y")); echo "Tomorrow is ".date(" ...

  2. window.frames && iframe 跨页面通信

    1.定义 frames[]是窗口中所有命名的框架组成的数组.这个数组的每个元素都是一个Window对象,对应于窗口中的一个框架. 2.用法 假设iframe 是一个以存在的 iframe 的 ID 和 ...

  3. Tensorboard 的使用笔记

    参考的教程: https://www.tensorflow.org/guide/summaries_and_tensorboard 遇到的错误: File "/usr/local/lib/p ...

  4. 递推-练习2--noi3525:上台阶

    递推-练习2--noi3525:上台阶 一.心得 二.题目 3525:上台阶 总时间限制:  1000ms 内存限制:  65536kB 描述 楼梯有n(100 > n > 0)阶台阶,上 ...

  5. 数据模板--DataTemplate

    DataTemplate 的 "DataType" 通常就是 “ViewModel” ——视图模型(亦可不恰当称之为:数据模型) <DataTemplate DataType ...

  6. snmpwalk-MIB of S5700-idc-stack

    IF-MIB:.iso.org.dod.internet.mgmt.mib-2.interfaces.ifTable.ifEntry.ifDescrOID:.1.3.6.1.2.1.2.2.1.2 针 ...

  7. 什么是API?我们常说调用API

    如果你不知道 API 是什么,说明你英语真的很差. API 就是 Application Programming Interface 三个单词,如果你不能顾名思义的话,我就举例说明. 1. DOM A ...

  8. 20181009-8 选题 Scrum立会报告+燃尽图 07

    Scrum立会报告+燃尽图(07)选题 此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2197 一.小组介绍 组长:刘莹莹 ...

  9. 解决Eclipse中文乱码的问题

    注意:显示中文所有的编码方式主要是GBK和UTF-8,UTF-8是国际通用的中文编码标准,推荐使用. 一. 设置工作空间的编码 编辑器的编码会影响到所有的项目中的字符的显示,可以说是作用最为广泛的设置 ...

  10. springboot整合mybatis增删改查(一):项目创建

    新建 打开 IDEA 工具,通过 File -> New -> Project->Spring Initializr 主要步骤包括: 选择 Spring Initializr 项目 ...