Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Hibernate (/ JPA) server-side paging dan MS SQL Server

Sedikit terlambat merespon, tetapi dapat membantu jadi saya akan mempostingnya. Punya masalah yang sama persis dan pusing untuk melacaknya. Solusinya adalah dengan menggunakan org.hibernate.dialect.SQLServer2012Dialect yang termasuk dalam Hibernate 4.3.0. Kueri yang dihasilkan menjadi (menempelkan dump Hibernate asli tanpa nama kolom dan alias):

WITH query 
     AS (SELECT inner_query.*, 
                Row_number() 
                  OVER ( 
                    ORDER BY CURRENT_TIMESTAMP) AS __hibernate_row_nr__ 
         FROM   (SELECT TOP(?) <COLUMN_NAMES> AS <ALIASES>
FROM <TABLE_NAME>
) inner_query) 
SELECT <ALIASES>
FROM   query 
WHERE  __hibernate_row_nr__ >= ? 
       AND __hibernate_row_nr__ < ?

Perhatikan penggunaan inner query dan Row_number() fungsi. Mereka akhirnya menyelesaikannya!



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana cara mengatur properti SSRS ConsumeContainerWhitespace di Visual Studio 2008?

  2. Hapus Padding Saat Mengirim Hasil Kueri dalam Email dari SQL Server (T-SQL)

  3. Menggunakan klausa HAVING dalam pernyataan UPDATE

  4. Pernyataan try-catch SQL tidak menangani kesalahan (SQL Server 2008)

  5. Cara menemukan nama kolom untuk semua tabel di semua database di SQL Server