gpt4 book ai didi

playframework - 在Ebean内部加入?

转载 作者:行者123 更新时间:2023-12-05 00:27:30 25 4
gpt4 key购买 nike

我读了https://archive-avaje-org.github.io/ebean/introquery_joinquery.html查看示例 A,我注意到没有内连接公共(public)列的规范。我认为他们的 fetch-tablename 语法会导致 Ebean 查看 2 个表必须内部连接的列。然后他们将每个结果存储为订单?他们正在加入 2 个表,那么他们如何将客户表中的列存储为订单?

我试图在我的代码中使用 ebean 进行内部连接,并发现我的至少一个假设是错误的。我有 2 张 table ,一张 Street table 和一张 House table (一对多关系)。 House 表中的 street_id 列是 Street 表的 id 列的外键。我正在尝试提出与此 sql 等效的 Ebean:

SELECT s.name, h.owner, h.isSubscriber FROM Street as s INNER JOIN House as h WHERE     
h.street_id=s.id AND h.isNew='false'

最佳答案

我相信你只是直接在where中引用表格ExpressionList 需要内部连接,例如:

Ebean.find(House.class)
.select("street.name, owner, isSubscriber")
.where()
.eq("street.id", s.id)
.eq("isNew", false)
.findList();

这假设您有一个与此类似的 House Entity 设置:
@Entity 
public class House extends Model {

@Id
public Long id;

@ManyToOne
public Street street;

...
}

像这样的街道实体:
@Entity 
public class Street extends Model {

@Id
public Long id;

@OneToMany(mappedBy = "street")
public List<House> houses;

...
}

关于playframework - 在Ebean内部加入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20457420/

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