必要な条件に基づいてソートするためだけに値を生成したいとします。
ORDER BY fruit_id desc,
a.rev_date desc,
case when fruit_id = primary_fruit_id then 0 else 1 end
サンプル出力に日付フィールドが表示されていないため、その日付が出力をどのようにセグメント化するかわかりません。日付は「同じキー値」よりも関連性が高いと思いますが、必要な効果が得られる場所であればどこにでも配置できます。
ORDER BY fruit_id desc,
case when fruit_id = primary_fruit_id then 0 else 1 end,
a.rev_date desc
ORDER BY case when fruit_id = primary_fruit_id then 0 else 1 end,
fruit_id desc,
a.rev_date desc