我有一个场景,我希望将两个具有相同列的表组合在一起。表1具有company1员工详细信息,table2具有company2员工详细信息,EMPID是表中的主键,我的查询是< / p>
select * from table1 t1 where t1.empid=400 union all
select * from table2 t2 where t2.empid=400
在该方案中,公司都有一名empid = 400的员工
我想从公司empid 400获得,这个查询在postgres sql编辑器中工作正常,但在春季启动时提供此查询时,返回总共2行,但两行相同(如t1),t2值替换为t1。
任何人都可以为这种或任何其他方法提供解决方案,以便在春季启动时实现这一目标。
了解更多
@Query(value = "select * from table1 t1 where t1.empid=?1 union all
select * from table2 t2 where t2.empid=?1 ", nativeQuery = true)
public List<Emp> getByProjectId(@Param("empid") Integer pEmpid);
T1
EMPID NAME DEPT
400 test DEV
T2
EMPID NAME DEPT
400 test2 TESTING
Expected result
EMPID NAME DEPT
400 test DEV
400 test2 TESTING
但是春天jpa给出的输出为
EMPID NAME DEPT
400 test DEV
400 test DEV
EMP实体
@Entity
@Table(name="EMP")
public class Emp {
@Id
@Column(name = "EMP_NO")
private int empNo;
@Column(name = "EMP_NAME")
private String empName;
@Column(name = "DEPT_NAME")
private String deptName;
}
先谢谢。