我在使用HQL时遇到了麻烦(在Groovy中): 一个简单的查询没有问题,如下所示(请注意我使用的是不同的):
def eqLiquid = liq.Liquidacion.executeQuery(
"""SELECT
distinct b.id ,
l.nombre as name
FROM Liquidacion l JOIN l.detalles ll JOIN ll.bioquimico b
WHERE l.id=:liqid
""", [liqid: liqid])
但是我需要将这些数据作为地图返回,然后我修改了查询(只添加了新的map()):
def eqLiquid = liq.Liquidacion.executeQuery(
"""SELECT new map(
distinct b.id ,
l.nombre as name
)
FROM Liquidacion l JOIN l.detalles ll JOIN ll.bioquimico b
WHERE l.id=:liqid
""", [liqid: liqid])
然后我收到一个错误:“意外的令牌:第2行第17列不同[选择新地图( 不同的b.id,“
如果我在最后一个查询中退出了distinct,它就可以了。 有人有这个问题吗? 似乎MAP和DISTINCT无法在HQL查询中工作