2012-02-29 4 views
0

Как преобразовать следующий оператор TSQL в HSQL.Преобразование TSQL в HSQL

SELECT * 
    FROM (SELECT d.*, 
       DENSE_RANK() OVER (PARTITION BY C1 ORDER BY Year desc) AS dr 
      FROM table_1 d) dd 
WHERE dr = 1 
+0

И до сих пор, вы пытались ... что? –

+0

Я не думаю, что вы делаете запросы на прошивку в HQL .. почему бы вам не попробовать преобразовать это в представление db, а затем использовать HQL для его выбора. –

+0

Почему вы хотите написать ** HQL **? Поскольку ** DENSE_RANK() ** - это специфическая функция оракула, нет смысла записывать ее в ** HQL **. Лучше использовать ** SQL ** в методе ** createSQLQuery() **. – ManuPK

ответ

1

выберите t1 из table_1 t1, где t1.year = (выберите макс (год) от table_1 где t1.C1 = C1)

Смежные вопросы