TECH I.S.

Django Order By


Order By(並べ替え)

QuerySetを並べ替えるために、Djangoは次のメソッドorder_by()を使用します。

結果を名のアルファベット順に並べます。

mydata = Member.objects.all().order_by('firstname').values()

実行例(開発準備中) »

SQLでは、上記のステートメントは次のように記述されます。

SELECT * FROM members ORDER BY firstname;

降順

デフォルトでは、結果は昇順(最小値が最初)にソートされます。方向を降順(最大値が最初)に変更するには、-フィールド名の前にマイナス記号(NOT)を使用します。

結果の名を降順に並べます。

mydata = Member.objects.all().order_by('-firstname').values()

実行例(開発準備中) »

SQLでは、上記のステートメントは次のように記述されます。

SELECT * FROM members ORDER BY firstname DESC;

複数のOrder By

複数のフィールドで順序付けするには、order_by()メソッド内でフィールド名をカンマで区切ります。

最初に名字の昇順で結果を並べ替え、次にIDの降順で並べ替えます。

mydata = Member.objects.all().order_by('lastname', '-id').values()

実行例(開発準備中) »

SQLでは、上記のステートメントは次のように記述されます。

SELECT * FROM members ORDER BY lastname ASC, id DESC;


プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細