Django QuerySet - 排序
排序
要對 QuerySets 進行排序,Django 使用 order_by()
方法
在 SQL 中,上面的語句將這樣寫
SELECT * FROM members ORDER BY firstname;
降序排列
預設情況下,結果是升序排序(數值最小的在前),要將方向更改為降序(數值最大的在前),請在欄位名前使用減號(NOT),-
在 SQL 中,上面的語句將這樣寫
SELECT * FROM members ORDER BY firstname DESC;
多個排序欄位
要按多個欄位排序,請在 order_by()
方法中用逗號分隔欄位名
示例
首先按姓氏升序排序,然後按 ID 降序排序結果
mydata = Member.objects.all().order_by('lastname', '-id').values()
執行示例 »
在 SQL 中,上面的語句將這樣寫
SELECT * FROM members ORDER BY lastname ASC, id DESC;