JPA QueryDsl подзапрос не может установить смещение и ограничение - PullRequest
0 голосов
/ 02 июня 2019

Когда я использую JPA + QueryDsl, установить ограничение и смещение в подзапросе может не работать

mysql5, spring5, queryDsl4.2.1

pgIdTestEnts =new JPAQueryFactory(em).select(qPgIdTestEnt).from(qPgIdTestEnt)
                .where(
                        qPgIdTestEnt.snowFlakeId.in(
                                new JPAQueryFactory(em).select(qPgIdTestEnt.snowFlakeId).from(qPgIdTestEnt).offset(range.getStart()).limit(range.getLength())
                ))
                .fetch();

, и я проверил журналы следующим образом:

select
        pgidtesten0_.SNOW_FLAKE_ID as SNOW_FLA1_0_,
        pgidtesten0_.BATCH_NUMBER as BATCH_NU2_0_ 
    from
        PG_ID_TEST pgidtesten0_ 
    where
        pgidtesten0_.SNOW_FLAKE_ID in (
            select
                pgidtesten1_.SNOW_FLAKE_ID 
            from
                PG_ID_TEST pgidtesten1_
        )

предел и смещение здесь не показаны, но если я переместлю предел и смещение в основной запрос, все будет в порядке.так почему?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...