sql >> データベース >  >> RDS >> Mysql

JPQLのLIMIT句の代替は何ですか?

    このような結果の制限をサポートしていないJPQLを使用しています。ネイティブJPQLを使用する場合は、setMaxResultsを使用する必要があります 結果を制限します。

    ただし、Spring Data JPAを使用しているため、基本的に非常に簡単に実行できます。 こちら クエリに基づいて結果を制限する方法については、リファレンスガイドを参照してください。次の場合、findメソッドはあなたが望むことを正確に実行します。

    findFirstByOrderById();
    

    Pageableを使用することもできます LIMITの代わりにクエリを使用した引数 条項。

    @Query("SELECT s FROM Students s ORDER BY s.id DESC")
    List<Students> getLastStudentDetails(Pageable pageable);
    

    次に、呼び出しコードで次のようにします(ここ リファレンスガイドで)。

    getLastStudentDetails(PageRequest.of(0,1));
    

    プレーンSQLに頼る必要なしに、どちらも同じ結果をもたらすはずです。



    1. PostgreSQLで多対多の関係を実装するにはどうすればよいですか?

    2. OracleでGUIDを生成する方法は?

    3. Macはターミナルを使用してmysqlをインストールして開きます

    4. .frmファイルからmysqlデータベースを復元します