次の JPQL クエリを使用して、SSN に基づいてレコードを取得および並べ替えています。DB では、そのうち 7 人が SSN を持っており、4 人は SSN を持っていません。初めて 11 件のレコードがすべて返されるのを確認しましたが、クエリを再度実行すると、ケースが 0 に設定されたレコードと 1 に設定されたレコードではなく、7 件のレコードしか表示されません。
SELECT qd, CASE WHEN qd.ssn IS NULL THEN 1 ELSE 0 END as nullssn
FROM UiQtrlyRptUnitDtl qd
WHERE qd.emprAcctId = :emprAcctId
AND qd.ccyyqId IN (:ccyyqList)
ORDER BY nullssn desc, qd.ssn, qd.lastNa, qd.firstNa
JPA 2.0 と Websphere で OpenJPA を使用しています。