【发布时间】:2013-02-22 08:45:19
【问题描述】:
我需要像这样实现 sql 查询:
SELECT * FROM (SELECT a FROM b WHERE a.z = 1) WHERE rownum <=1;
如何使用 QueryDSL 编写这样的语句(我没有使用 JPA 和 JDO - 只使用干净的 sql)?
【问题讨论】:
标签: spring-data querydsl
我需要像这样实现 sql 查询:
SELECT * FROM (SELECT a FROM b WHERE a.z = 1) WHERE rownum <=1;
如何使用 QueryDSL 编写这样的语句(我没有使用 JPA 和 JDO - 只使用干净的 sql)?
【问题讨论】:
标签: spring-data querydsl
Querydsl SQL模拟所有支持数据库的分页,所以你可以直接写
query.from(a)
.where(a.z.eq(1))
.limit(1)
.list(a);
如果你需要通过子查询来写,那么像这样
query.from(
new SQLSubQuery().from(a).where(a.z.eq(1)).list(a).as(a))
.where(rownum.loe(1))
.list(a);
【讨论】: