已知我有两张表:

我现在查询时需要同时获取两张表对应的数据。比如我想要获取 stuid,honName,obreson三个对应字段。我在脑子里梳理了一下思路,以我目前的知识储备,只能在数据库写一下两个表join,然后在bean层,要么一个里面封装另外一个对象,要么另外写一个类封装一下。

很明显第一个方法有点违反开闭原则,假如这个底层不是我写的那我绝对不能这么干,第二个又有点繁琐,所以我就在思考有没有别的方法。

解决方法:

我想起来了在stream那一块的流的扁平化这一点,立马去实践了一下:

ListhonorList = honors.findAll();

ListobtainedhonorList = obHonors.findAll();

Listlist = obtainedhonorList

.stream()

.flatMap(o->honorList

.stream()

.filter(h->o.getHonid()==h.getHonid())

.map(h->new Object[]{h,o}))

.collect(Collectors.toList());

现在就已经拿到了这样的一组集合

//list

尝试对两个进行一下遍历

for (Object[] o:list

) {

for (int i=0;i

获得的结果为:

奖励1-----

1

表现优秀

奖励2-----

1

表现卓越

再来个例子

假如对一张表进行处理之后需要用另一张表存储其中的某些字段,则:

JAVA两个表相关联_java实现两张表的关联查询(非数据库语言)相关推荐

  1. 对于个人(注册表)与团队(团队表)(两张表没有关联)的展示与可空判断

    对于个人(注册表)与团队(团队表)(两张表没有关联)的展示与可空判断 1,在Model中只有GroupId没有名称(GroupName),所以自己定义一个: /// <summary>// ...

  2. 一张表左关联另外两张表,三表关联

    三表连接经常做的都是两两之间关联,尝试了一下两张表同时关联到一张表,结果和预期想的一样,当主表t1关联第二表t2时,t2中不存在与t1的code相等的情况下为null,在t1再关联t3时,t3中不存在 ...

  3. SQL两张表如何关联

    SQL两张表如何关联查询 比如:我有table1 和 table2 两张表table1: id name sex 1 张三 男 2 李四 女 3 王五 男table2: ...比如:我有table1 ...

  4. sql与mysql中2个表数据进行匹配_SQL语言中把数据库中两张表数据关联起来的语句...

    展开全部 1.创建32313133353236313431303231363533e59b9ee7ad9431333431373864两张测试表, create table test_cj(name ...

  5. 将一张表的主键作为外键关联到另一张表中

    将一张表的主键作为外键关联到另一张表中 1.外键的介绍 2.使用Navicat创建外键 3.外键的维护关系设定及其选择 1.外键的介绍 设置外键的作用很明显,就是讲两个表的数据产生关联,就比如个人信息 ...

  6. java 两个list排序_java实现两个不同list对象合并后并排序

    工作上遇到一个要求两个不同list对象合并后并排序 1.问题描述 从数据库中查询两张表的当天数据,并对这两张表的数据,进行合并,然后根据时间排序. 2.思路 从数据库中查询到的数据放到各自list中, ...

  7. powerdesigner 怎么关联两张表_【PL/SQL数据库】 三种关联机制 - 执行计划

    看完这章你会学习到以下内容: 1. 三种关联分别是什么? 2. 什么时候那个适合用哪个?(总结) 一共有三种关联机制: Nest Loop 嵌套循环 (大小表) Sort Merge 排序合并 (添加 ...

  8. python两张表对比不同_Python对比数据库两张表是否一致

    工作中我们经常需要对比数据库中两张表的数据是否有差异,以下代码通过pymsql对两张表的数据进行简单对比,可以记录新旧表的数据总数,以及两张表中有差异的数据. 应用场景:旧表中数据迁移到新表 运行结果 ...

  9. mysql 不通过关联查询表_mysql中多表不关联查询的实现方法详解

    下面小编就为大家带来一篇浅谈mysql中多表不关联查询的实现方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 大家在使用MySQL查询时正常是直接一个表的查询,要不然 ...

最新文章

  1. Python 连接Sql Server数据库 MSSql
  2. html自动广告业代码,html+javascript实现广告窗自由浮动
  3. 微信浏览器的html5页面显示配置等问题汇集 1,禁止微信浏览器分享页面链接 (定点更新)...
  4. 用802.11n 加速,将android手机屏幕投影到win7电脑上
  5. secureCrT夜间模式
  6. SAP Spartacus 服务器端渲染的单步调试
  7. [蓝桥杯][算法提高VIP]数的划分(记忆化搜索)
  8. 二维数组常用的赋值方式
  9. Flex 学习笔记------FLACC Crossbridge
  10. linux进入文件全文搜索命令,Linux 文件查找命令详解
  11. mysql哪个版本和x86兼容_[C++]C++连接MySQL,封装为class(兼容x86和x64)
  12. sql查询百分之20到百分之40的数据_FOCUS数据管理之ETL监控
  13. Linux下有趣的命令
  14. Python图像处理](2)---图像融合、加法运算及图像类型转换、图像缩放、图像旋转、图像翻转与图像平移
  15. 新会计准则与旧版内容的不同比较
  16. java 标准偏差函数std_如何使用JAVA计算标准差
  17. 【Vue3】vue3中组合式Api的setup写法快速入门上手起步
  18. 【论文阅读】PatchmatchNet
  19. C语言C++编程学习:排序原理分析
  20. python三个点是什么意思_Python 3 中 ... 三个点的省略号的作用

热门文章

  1. 无聊的程序员教你如何使用十几行代码练就单身20年的手速(文末彩蛋)
  2. 现在详解Android App AllowBackup配置带来的风险
  3. 数据库无法打开的原因及解决办法
  4. win10自带的 快速截图功能
  5. 使用SuperMap iDesktopX如何去掉“耗子尾巴”
  6. OKL4 linux kernel的编译方法
  7. 如何将数据从Excel文件导入SQL Server数据库
  8. 2018有赞校招笔试题
  9. 脑科学是个啥,跟人工智能有什么渊源「AI核心算法」
  10. 在线调试后台管理系统HTTP的POST请求