【发布时间】:2014-07-24 16:50:35
【问题描述】:
我正在使用 OpenJPA 将我的数据库中的 cmets 加载到评论对象中。评论对象还具有类别、来源(字符串)和评论时间字段。这与 OpenJPA 配合得很好,我喜欢 Comment 表中的 Comment 对象,一切都很好。
对于摘要视图,我有兴趣对类别和来源进行 GROUP BY 查询,以便对于每个来源,我可以查看有多少可用 cmets 的细分。
SELECT source, category, count(category) FROM Comments GROUP BY source,category
现在,我的想法是使用实体管理器创建此查询,并让它以某种方式使用 CommentSummary 对象而不是 Comment 对象。我不知道如何告诉 OpenJPA 如何做到这一点。似乎所有使用 GROUP BY 的示例都没有考虑获取基础对象本身。
我尝试创建一个名为“CommentSummary”的视图,但 OpenJPA 想要修改表以添加一个 id 字段 - 也许如果我简单地告诉它源和类别字段是主键,它会起作用。我只是有点困惑,在我能理解映射到我的问题的任何地方都没有直接解决这个问题。
有没有人成功做到这一点?我应该做些什么不同的事情?
【问题讨论】:
标签: java sql jpa group-by openjpa