我有一个这样的实体:
@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
}
MyTableTwo 实体:
@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
}
我写了基于recordId
. 总部:
SELECT mt from MyTable where recordId = 123
匹配 4 条 ID 为 123 的记录。但这些行是唯一的。
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:是否解决了重复实体问题?(加入另一张桌子)