Customer{ String customerName @OneToMany Set users; } User{ String userName; }
当我这样做时:
选择 c.customerName 作为 customerName ,concat(u.userName) 作为 Customer c 中的 userNames,加入 c.users 作为 u
hibernate 没有返回我期望的结果。
最佳答案
不幸的是,hibernate 没有组合字符串的 SQL 聚合函数。也没有针对此的标准 SQL 聚合函数,因此每个数据库往往都有自己的函数。 NexusDB 3.x 的 LIST() 就是一个例子,它编译集合中以逗号分隔的非空值列表。
SELECT c.customerName as customerName , LIST(u.userName) as userNames
FROM Customer c
JOIN c.users as u
GROUP BY c.customerName;
关于java - HQL连接函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6079089/