JAVA两个表相关联_java实现两张表的关联查询(非数据库语言)
已知我有两张表:
我现在查询时需要同时获取两张表对应的数据。比如我想要获取 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,在Model中只有GroupId没有名称(GroupName),所以自己定义一个: /// <summary>// ...
- 一张表左关联另外两张表,三表关联
三表连接经常做的都是两两之间关联,尝试了一下两张表同时关联到一张表,结果和预期想的一样,当主表t1关联第二表t2时,t2中不存在与t1的code相等的情况下为null,在t1再关联t3时,t3中不存在 ...
- SQL两张表如何关联
SQL两张表如何关联查询 比如:我有table1 和 table2 两张表table1: id name sex 1 张三 男 2 李四 女 3 王五 男table2: ...比如:我有table1 ...
- sql与mysql中2个表数据进行匹配_SQL语言中把数据库中两张表数据关联起来的语句...
展开全部 1.创建32313133353236313431303231363533e59b9ee7ad9431333431373864两张测试表, create table test_cj(name ...
- 将一张表的主键作为外键关联到另一张表中
将一张表的主键作为外键关联到另一张表中 1.外键的介绍 2.使用Navicat创建外键 3.外键的维护关系设定及其选择 1.外键的介绍 设置外键的作用很明显,就是讲两个表的数据产生关联,就比如个人信息 ...
- java 两个list排序_java实现两个不同list对象合并后并排序
工作上遇到一个要求两个不同list对象合并后并排序 1.问题描述 从数据库中查询两张表的当天数据,并对这两张表的数据,进行合并,然后根据时间排序. 2.思路 从数据库中查询到的数据放到各自list中, ...
- powerdesigner 怎么关联两张表_【PL/SQL数据库】 三种关联机制 - 执行计划
看完这章你会学习到以下内容: 1. 三种关联分别是什么? 2. 什么时候那个适合用哪个?(总结) 一共有三种关联机制: Nest Loop 嵌套循环 (大小表) Sort Merge 排序合并 (添加 ...
- python两张表对比不同_Python对比数据库两张表是否一致
工作中我们经常需要对比数据库中两张表的数据是否有差异,以下代码通过pymsql对两张表的数据进行简单对比,可以记录新旧表的数据总数,以及两张表中有差异的数据. 应用场景:旧表中数据迁移到新表 运行结果 ...
- mysql 不通过关联查询表_mysql中多表不关联查询的实现方法详解
下面小编就为大家带来一篇浅谈mysql中多表不关联查询的实现方法.小编觉得挺不错的,现在就分享给大家,也给大家做个参考.一起跟随小编过来看看吧 大家在使用MySQL查询时正常是直接一个表的查询,要不然 ...
最新文章
- Python 连接Sql Server数据库 MSSql
- html自动广告业代码,html+javascript实现广告窗自由浮动
- 微信浏览器的html5页面显示配置等问题汇集 1,禁止微信浏览器分享页面链接 (定点更新)...
- 用802.11n 加速,将android手机屏幕投影到win7电脑上
- secureCrT夜间模式
- SAP Spartacus 服务器端渲染的单步调试
- [蓝桥杯][算法提高VIP]数的划分(记忆化搜索)
- 二维数组常用的赋值方式
- Flex 学习笔记------FLACC Crossbridge
- linux进入文件全文搜索命令,Linux 文件查找命令详解
- mysql哪个版本和x86兼容_[C++]C++连接MySQL,封装为class(兼容x86和x64)
- sql查询百分之20到百分之40的数据_FOCUS数据管理之ETL监控
- Linux下有趣的命令
- Python图像处理](2)---图像融合、加法运算及图像类型转换、图像缩放、图像旋转、图像翻转与图像平移
- 新会计准则与旧版内容的不同比较
- java 标准偏差函数std_如何使用JAVA计算标准差
- 【Vue3】vue3中组合式Api的setup写法快速入门上手起步
- 【论文阅读】PatchmatchNet
- C语言C++编程学习:排序原理分析
- python三个点是什么意思_Python 3 中 ... 三个点的省略号的作用