私はページングが必要なクエリを念頭に置いており、Spring JPAで構築したいと考えています。私は3つのテーブル、詳細、ヘッダー、およびクレームを持っています。ヘッダーレコードには、多くの(子)詳細レコードがあり、OneToManyマッピングがあります。請求はヘッダーとの関係はありませんが、正式な制約はありませんが、どちらも同じ値のこのフィールドclaim_num(主キーではありません)を持っています。クレームには、 'lastName'というフィールドもあります。 SpringのJPARespositoryを拡張し、詳細レポでは、私は次のように@queryと方法を構築していました:JPQLリポジトリから無関係のエンティティでプロパティをソート
@Query("select new MyDTO(d, h, c) from Detail d, Header h
left join Claim c on h.claimNum = c.claimNum")
Page<MyDTO> getSomeDetails(new Page(0, 10, new Sort("claim.lastName")))
目標は、ヘッダや請求から詳細と値のページを取得することであるとして、結果セットで返される必要がありますよく 注文番号は私の現在の障害です。私は「主張は細部の財産ではない」としている。それは理にかなっていますが、詳細は形式的にヘッダーに関連していますが、詳細レベルでPage(Sort())を渡すと、生成されたSQLは 'order by'を正しく取得できますか?読んでいただき、ありがとうございました。これはスプリングブートですが、ハイバネートコア5.1にアップグレードされました。