hibernate 根据某一列数据去重

简介: 其实这种方式不局限于hibernateproblem:项目中遇到好几次这种问题,需要根据某个字段去重,也就是查出来的某个字段必须的值必须都是unique的。

其实这种方式不局限于hibernate

problem:
项目中遇到好几次这种问题,需要根据某个字段去重,也就是查出来的某个字段必须的值必须都是unique的。

因为sql去重必须是整条数据所有字段完全相同才能去重,所以无法直接通过distinct根据某一列去重。

Solution:
给这个表添加一个标识列,表示某条数据能够代表一组数据,在插入数据的时候可以判断一下这个值是否可以作为标识列,可以的话则设置为true,否则false,之后在查询的时候可以加上这个条件,那么查出来的效果就相当于根据某一列去重。

“example: ”
table:

采购商 供应商 商品
采购商1 供应商1 goods1
采购商1 供应商1 goods3
采购商1 供应商1 goods4
采购商1 供应商2 goods5

采购商需要查询与自己绑定关系的供应商,这个时候需要根据供应商列进行去重,所以可以加一个标识列,当采购商跟这个供应商第一次绑定关系的时候把这个标识列设置true

采购商 供应商 商品 是否标识列
采购商1 供应商1 goods1 true
采购商1 供应商1 goods3 false
采购商1 供应商1 goods4 false
采购商1 供应商2 goods5 true

当查询的时候把标识列为true的查出来就行。

条条大路通罗马,一定要发散思维。

目录
相关文章
|
3月前
|
XML Java 数据库连接
Spring Boot的数据访问之Spring Data JPA以及Hibernate的实战(超详细 附源码)
Spring Boot的数据访问之Spring Data JPA以及Hibernate的实战(超详细 附源码)
72 0
|
5天前
|
XML JSON Java
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
本文介绍了如何使用IntelliJ IDEA和Maven搭建一个整合了Struts2、Spring4、Hibernate4的J2EE项目,并配置了项目目录结构、web.xml、welcome.jsp以及多个JSP页面,用于刷新和学习传统的SSH框架。
15 0
使用IDEA+Maven搭建整合一个Struts2+Spring4+Hibernate4项目,混合使用传统Xml与@注解,返回JSP视图或JSON数据,快来给你的SSH老项目翻新一下吧
|
Oracle Java 关系型数据库
hibernate在分层架构中修改数据(update)时遇到的问题!!
hibernate在分层架构中修改数据(update)时遇到的问题!!
|
缓存 Java 数据库连接
hibernate+oracle+servlet实现插入数据的时候,不立马显示!!
hibernate+oracle+servlet实现插入数据的时候,不立马显示!!
|
Java 数据库连接
Java:hibernate-validator验证数据
Java:hibernate-validator验证数据
100 0
|
SQL Java 数据库连接
hibernate 根据某一列数据去重
hibernate 根据某一列数据去重
|
Java 测试技术 数据库连接
hibernate4框架的增删查改(包含hql)数据等功能方法
版权声明:本文为博主原创文章,如需转载,请标明出处。 https://blog.csdn.net/alan_liuyue/article/details/53388869 本次...
1297 0
|
Java 数据库连接 数据库
hibernate persist update 方法没有正常工作(不保存数据,不更新数据)
工程结构 问题描述 在工程中通过spring aop的方式配置事务,使用hibernate做持久化。在代码实现中使用hibernate persit()方法插入数据到数据库,使用hibernate update()方法更新数据。
1148 0
|
3月前
|
SQL 缓存 Java
框架分析(9)-Hibernate
框架分析(9)-Hibernate