sql >> Database >  >> RDS >> Sqlserver

Slaapstand (/JPA) server-side paging en MS SQL Server

Een beetje late reactie, maar het kan nuttig zijn, dus ik zal het posten. Had precies hetzelfde probleem en hoofdpijn om het op te sporen. Oplossing is om org.hibernate.dialect.SQLServer2012Dialect te gebruiken die is opgenomen in Hibernate 4.3.0. Gegenereerde query wordt (echte slaapstand-dump plakken zonder kolomnamen en aliassen):

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__ < ?

Let op het gebruik van inner query en Row_number() functie. Ze hebben het eindelijk opgelost!



  1. PDO en MySQL Fulltext-zoekopdrachten

  2. HTML - kleur veranderen in tekstgebied vanuit een optie in een select box gegenereerd vanuit mysql

  3. SQL-efficiënte manier om deel te nemen aan een tabel waarin alle waarden bestaan

  4. Hoe te controleren op NULL in MySqlDataReader aan de hand van de kolomnaam?