多くのフィルタークエリから合成しているクエリセットがあります。カスタム SQL 式で注文したいと思います。具体的には、これはORDER BY
クエリに追加したいセクションです。
...
ORDER BY
greatest(`ff_answer`.`update_ts`,
if(max(`ff_comment`.`create_ts`) is null,
'2001-01-01 00:00:01',
max(`ff_comment`.`create_ts`)
)
)
Djangoでこれを行うことは可能ですか? 携帯性も気になりません。理想的には、次のようなことをしたいと思います。
my_qs = my_qs.order_by_custom_sql('greatest(`ff_answer`.`update_ts`,
if(max(`ff_comment`.`create_ts`) is null,
'2001-01-01 00:00:01',
max(`ff_comment`.`create_ts`)
)
)'
)
私は 1 回限りのハッキングを受け入れます。私の唯一の要件は、この結果が Django のページネーターに渡せるものであることです。