java - 使用 QueryDSL JPA 在 MySQL 中查找重复的行

标签 java mysql jpa querydsl

我想在 QueryDSL JPA 中执行这个 SQL 请求

SELECT authorizationitem.* 
FROM authorizationitem 
INNER JOIN 
(
    SELECT `authorize` 
    FROM authorizationitem 
    GROUP BY `authorize` 
    HAVING COUNT(*)>1
) a2 
    ON authorizationitem.`authorize` = a2.`authorize`;

为了在表中找到重复的行,我应该执行这个请求。但是使用 QueryDSL,我找不到写这个的方法。

似乎 QueryDSL 不允许在 Inner Join 中使用子查询 :s

有什么建议吗?

谢谢 问候,

最佳答案

不能用 HQL/JPQL 表达,所以需要用 SQL 表达。 Querydsl JPA 提供了通过其 API 表达 JPQL 和 SQL 查询的可能性。

关于java - 使用 QueryDSL JPA 在 MySQL 中查找重复的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12804492/

相关文章:

java - 无法在java中从mysql导出csv文件

javascript - 通过 PHP 和 JQuery 提交多个数据库更新

mysql - 尝试使用 Mysql.Data.Entity 时出现异常

java - 从数据库生成模型类

java - 所有实体的主键都会递增

java - 单独的集合类对象

java - 调试从 Tomcat (JSP) 运行的 Java 程序

java - 数据在数据库 jpa/hibernate 中插入两次

php - PDO 准备语句创建

spring - 如何在 JPA 中生成自定义 Id