我是 JPQL 查询的初学者,但我不明白如何在 JPQL 查询中翻译 SQL 查询:
我有 2 张桌子:
- 客户( idCustomer ,..., idMacroMarket )
- MacroMarket( idMacroMarket , nameMacroMarket ...)
这些表与@ManytoOne(针对客户)和@OneToMany(针对MacroMarket)的关系链接。
SQL查询:
SELECT nameMacroSegment FROM Macro_market m
INNER JOIN Customer c ON c.idMacroMarket = m.idMacroMarket
WHERE idCustomer = id;
JPQL 查询:
SELECT nameMacroSegment FROM Macro_market m
...
...
WHERE idCustomer = :id
实体
@Entity
@Table(name="macro_market")
public class Macro_market implements Serializable {
private static final long serialVersionUID = 1L;
/** ATTRIBUTES **/
@Id
@GeneratedValue( strategy = GenerationType.IDENTITY)
private Long idMacroMarket;
private String nameMacroSegment;
private String nameMarketSegment;
@OneToMany(mappedBy="macMar")
private List<Customer> customers;
...
...
@Entity
@Table(name="customer")
public class Customer implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue( strategy = GenerationType.IDENTITY)
private Long idCustomer;
...
...
/** RELATIONS **/
// CUSTOMER - MACRO_MARKET
@ManyToOne(cascade=CascadeType.ALL)
@JoinColumn(name="idMacroMarket",referencedColumnName="idMacroMarket")
private Macro_market macMar;
谢谢您的回答。