有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

JavaHQL返回重复的实体

我有这样一个实体:

  @Entity
  @Table(name = "my_table")
  public class MyTable implements Serializable {

     @Id
     @Column(name = "RECORD_ID")
     private Long recordId;

     @Column(name = "CNAME")
     private String changeName;

     @Transient
     MyTableTwo tableTwo;

     //getters and setters
 }

MyTable2实体:

  @Entity
  @Table(name = "my_table_two")
  public class MyTableTwo implements Serializable {

     @Id
     @Column(name = "REC_ID")
     private Long recId;

     @Column(name = "CNAME")
     private String changeName;

     @Column(name = "CVAL")
     private String changeValue;

     //getters and setters
 }

我在{}上写了hqlbaed。 HQL:

 SELECT mt from MyTable where recordId = 123

匹配ID为123的4条记录。但这些行是唯一的

recordId在数据库中有重复的值。所以我假设,如果有4个实体具有相同的recordId,比如123。然后,第一个实体将重复4次

Q1。这是正确的吗?(目前,我得到的结果是这样的,重复的行。所以我想确认,重复的recordId导致了这个问题。

现在我需要在一个字段名上加入MyTableTwo

在常规查询中,我会这样写:

select my_table.record_id, my_table_two.rec_id, my_table_two.change_val 
  FROM my_table, my_table_tow
 where my_table.cname = my_table_two.cname;

Q2。如何使用上述实体设置

Q3:它解决了重复实体问题吗?(与另一个表合并)


共 (0) 个答案