gpt4 book ai didi

java - 我有两种不同类型的用户表,我想在 Hibernate 中的单个查询中检查移动重复

转载 作者:行者123 更新时间:2023-11-29 20:23:41 25 4
gpt4 key购买 nike

两个类中都没有更多的类变量,但我删除了它们。我尝试了联合查询,但没有成功。有没有其他方法可以在单个查询中执行此操作。

这是我的联合查询:

Query query = entityManager.createQuery("select vu.mobileNumber AS mn from VillageUser vu where vu.mobileNumber = :inmobile UNION select ca.mobileNumber AS mn from CustomerAccount ca where ca.mobileNumber = :inmobile");

这是我的表格:

public class VillageUser extends BaseEntity{

private static final long serialVersionUID = 1L;

@Column(name="ASSEMBLY_USER_ID")
private Long auAccountId;

@Column(name="FULL_NAME")
private String fullName;

@Column(name="USER_TYPE")
private String userType;

@Column(name="MOBILE_NUMBER")
private String mobileNumber;
}

public class AssamblyUser extends BaseEntity{

private static final long serialVersionUID = 1L;

@Column(name="FULL_NAME")
private String fullName;

@Column(name="USER_TYPE")
private String userType;

@Column(name="MOBILE_NUMBER")
private String mobileNumber;
}

最佳答案

HQL 不支持联合。请参阅this .

但是您可以使用 Union 创建 SQL 并在 hibernate 中使用它

session.createSQLQuery(sqlQuery).addScalar("mobileNumber",StringType.INSTANCE) 

关于java - 我有两种不同类型的用户表,我想在 Hibernate 中的单个查询中检查移动重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39409727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com