Пользовательские переменные sql в QueryDsl - PullRequest
0 голосов
/ 23 октября 2018

Я хочу выразить следующий mysql запрос в QueryDsl:

SELECT AVG(dd.val) as median_val
 FROM (
  SELECT d.balance as val, @rownum:=@rownum+1 as `row_number`, @total_rows:=@rownum
  FROM message_entity d, (SELECT @rownum:=0) r
  WHERE d.balance is NOT NULL
  -- put some where clause here
  ORDER BY d.balance
  ) as dd
WHERE dd.row_number IN ( FLOOR((@total_rows+1)/2), FLOOR((@total_rows+2)/2) );

Этот запрос используется для получения MEDIAN некоторых значений столбцов в базе данных.Сложность заключается в выражении пользовательских переменных sql.

...