我有3个豆子:产品,颜色,价格
价格 - 产品关系 - @ManyToOne
产品 - 颜色关系 - @ManyToMany
每种颜色有3种产品,每种产品有3种价格
我将解释我的问题:在Product表中我有一个字段“type”,在价格表中我有字段“price_min”
我是否需要获取指定颜色的所有价格?我如何使用HQL进行此操作?
Query query =hibernatesession.createQuery("select distinct prlpx from Color c, Product pr " +
"join pr.listPrice prlpx" +
"join c.listProduct clpr where clpr.nom='"+color+"' " +
" AND prlpx.price_min='"+price_min+"' pr.type='x' ");
listPrice =(List<Price>)query.list();
但不起作用!!!!
答案 0 :(得分:0)
在 prlpx 和加入之间错过了sql中的空格。
试试这个
Query query =hibernatesession.createSQLQuery("select distinct prlpx from Color c, Product pr " +
"join pr.listPrice prlpx " +
"join c.listProduct clpr where clpr.nom='"+color+"' " +
" AND prlpx.price_min='"+price_min+"' pr.type='x' ");
请注意,我使用了 createSQLQuery