[コメント]を昇順または降順で並べ替えられるようにしたい。「orderby」句で集計を再実行しようとしましたが、機能しませんでした。また、エイリアス[comment]を使用できるサブクエリの外部で並べ替えを試しましたが、行0と行10の間でしか並べ替えられませんでした。
このクエリは、はるかに大きなクエリの小さなバージョンです。
SELECT *
FROM (SELECT ISNULL((SELECT COUNT("order")
FROM order_comment
WHERE "order" = "order"."id"
GROUP BY "order"), 0) AS [comment],
Row_number() OVER (ORDER BY "order"."id" DESC) AS [rownum]
FROM [order]
WHERE ISNULL((SELECT COUNT("order")
FROM order_comment
WHERE "order" = "order"."id"
GROUP BY "order"), 0) > 0) AS [filter]
WHERE [rownum] BETWEEN 0 AND 10
MySqlでとても簡単です!
SELECT Ifnull((SELECT COUNT(`order`)
FROM order_comment
WHERE `order` = `order`.`id`
GROUP BY `order`), 0) AS `comment`
FROM `order`
HAVING `comment` > 0
ORDER BY `comment` DESC
LIMIT 0, 10