使用 NamedQuery 进行内部联接?
Posted
技术标签:
【中文标题】使用 NamedQuery 进行内部联接?【英文标题】:Inner Join with NamedQuery? 【发布时间】:2012-06-07 14:42:24 【问题描述】:我需要从三个不同的表中获取数据并放入一个列表中。我想知道如何使用namedQuery 做到这一点?我已经看到可以通过在线搜索来实现,但我无法让它发挥作用。
SELECT
Customer.name,
Customer.adress,
Orders.date,
Orders.order_id,
Product.product_name,
Product.price
FROM
Orders
INNER JOIN Customer ON Customer.customer_id=Orders.customer_id
INNER JOIN Product ON Product.product_id=Orders.product_id
ORDER BY
Orders.date
这就是我想要转换为命名查询的内容。如果有人能把我踢向正确的方向,那就太好了。
【问题讨论】:
【参考方案1】:似乎我对名为查询的术语不熟悉。 但这就是你在 SQL 中的做法
CREATE VIEW view_name AS
SELECT
Customer.name,
Customer.adress,
Orders.date,
Orders.order_id,
Product.product_name,
Product.price
FROM
Orders
INNER JOIN Customer ON Customer.customer_id=Orders.customer_id
INNER JOIN Product ON Product.product_id=Orders.product_id
ORDER BY
Orders.date
那你就可以这样称呼了
SELECT * FROM view_name
但请注意,视图中的视图对性能很不利。
【讨论】:
以上是关于使用 NamedQuery 进行内部联接?的主要内容,如果未能解决你的问题,请参考以下文章