1
У меня есть SQL, что я хотел бы написать в Criteria API:как группы по диапазонам в NHibernate с критериями апи
SELECT CASE
WHEN total_pages = 0 THEN '0 pages'
WHEN total_pages BETWEEN 1 AND 3 THEN '1-3 pages'
WHEN total_pages BETWEEN 4 AND 6 THEN '4-6 pages'
WHEN total_pages > 6 THEN '7 + pages'
END AS pagerange, sum(total_pages) AS 'Total'
FROM dbo.connector_log_entry
GROUP BY
CASE
WHEN total_pages = 0 THEN '0 pages'
WHEN total_pages BETWEEN 1 AND 3 THEN '1-3 pages'
WHEN total_pages BETWEEN 4 AND 6 THEN '4-6 pages'
WHEN total_pages > 6 THEN '7 + pages'
END
ORDER BY pagerange
Я сам оказался с почти таким же кодом. И порядок работы тоже хорош. одна вещь, которую я добавил, это var caseString = @ "CASE WHEN total_pages = 0 THEN 'a0 pages' КОГДА total_pages МЕЖДУ 1 И 3 ТОГДА 'b1-3 страницы' КОГДА total_pages МЕЖДУ 4 И 6 ТОГДА 'c4-6 страниц '... буквы алфавита в PageRanges для хорошей сортировки –