2011-09-26 56 views

回答

2

如何獲得排序的NULL取決於底層數據庫。

對於PostgreSQL,你可以這樣做:

Items.order("owns_cache DESC NULLS LAST") 

對於MySQL和SQLite:

Items.order("COALESCE(owns_cache, 0) DESC") 

我認爲MySQL的以降序排序,但這樣你可能不需要任何的底部排序的NULL那裏特別。這種COALESCE方法也可以在PostgreSQL中工作,所以這將是一個便攜式解決方案,應該可以爲您提供一致的結果。

如果您希望在ASC排序的底部顯示NULL,您可以用0替換大於最大的owns_cache數字的東西。

+0

啊啊,謝謝。我正在使用Postgres。 – Julien

相關問題