私はこれを解決しようとする日があります。
サブクエリに ORDER BY と LIMIT が必要です。これはネイティブ SQL です。
SELECT
ope.idOperacion AS OperationID,
est.nombre AS LastStatusName
FROM
SSCM_4.Operaciones4 ope
INNER JOIN SSCM_4.BitacoraOperaciones4 bita
ON
bita.operacion = ope.idOperacion
INNER JOIN SSCM_4.Estatus4 est
ON
est.idEstatus = bita.estatus
WHERE
ope.idOperacion = 54
AND bita.idBitacoraOperacion =
(
SELECT
BO2.idBitacoraOperacion
FROM
SSCM_4.BitacoraOperaciones4 BO2
INNER JOIN SSCM_4.Estatus4 EST2
ON
(
BO2.Estatus = EST2.idEstatus
)
WHERE
BO2.Operacion = ope.idOperacion
ORDER BY
EST2.Prioridad DESC,
BO2.FechaOperacion DESC,
BO2.idBitacoraOperacion ASC LIMIT 1
)
しかし問題は、ORDER BY が JPQL のサブクエリでサポートされていないことです。
ビジネスロジックは次のとおりです。サブクエリは、主に操作ジャーナル履歴の行の優先度と日付によって定義された操作の最後のステータスを返す必要があるため、ORDER BY 句と LIMIT 句が必要です。
動的クエリ用の API を開発したため、JPQL でこれが必要です。これは、使用する必要がある JPQL 用のクエリビルダーです。
前もって感謝します。