首页 > 解决方案 > 使用查询从方法返回两个值

问题描述

我有 2 个表UserRole,RoleId是表中的外键User,所以我在这里写了一个方法,但它没有返回我想要的输出。我想计算User例如有RoleId = 1多少和有多少RoleId = 2

public int countPersonelAdminandWorker() throws PerdoruesiException {
    Query query = em.createNativeQuery("SELECT COUNT(RoleID) FROM User p WHERE p.roleID = 1 ");

    try {
        return query.getSingleResut();
    }
    catch(NoResultException e) {
        throw new PerdoruesiException("...");
    }
}

标签: java

解决方案


"SELECT COUNT(RoleID) as 'Count Role ID' , roleID FROM User p WHERE p.roleID = 1 OR p.roleID=2 GROUP BY p.roleID";


推荐阅读