Djangoデータベース照会時の各種ソート
2077 ワード
entry_に従ってdateは小さい頃から大きなクエリーデータまで、次のように書くことができます.
1
大から小へのソート:
1
他の種類のソートについて説明します
ランダムソート:
1
でもorder_by(?)この方法は、バックエンド・データベースに依存してexpensiveおよびslowである可能性があります.
リレーショナル・テーブルのフィールドでソート
1 2 3 4 5 6 7
1 2 3 4 5 6 7 8
Note:単一下線でも二重下線でも、関連テーブルのデータをフロントエンドで取得できます.
変換元:http://www.php.cn/python-tutorials-362108.html
1
Content.objects.order_by(
'entry_date'
)
大から小へのソート:
1
Content.objects.order_by(
'-entry_date'
)
他の種類のソートについて説明します
ランダムソート:
1
Content.objects.order_by(
'?'
)
でもorder_by(?)この方法は、バックエンド・データベースに依存してexpensiveおよびslowである可能性があります.
リレーショナル・テーブルのフィールドでソート
1 2 3 4 5 6 7
class
Category(Base):
code
=
models.CharField(primary_key
=
True
,max_length
=
100
)
title
=
models.CharField(max_length
=
255
)
class
Content(Base):
title
=
models.CharField(max_length
=
255
)
description
=
models.TextField()
category
=
models.ForeignKey(Category, on_delete
=
models.CASCADE)
1 2 3 4 5 6 7 8
# Category code, Content ,
Content.objects.order_by(
'category__title'
)
# ,
Content.objects.order_by(
'category'
)
#
Content.objects.order_by(
'category__code'
)
# join ,
Content.objects.order_by(
'category_title'
)
Note:単一下線でも二重下線でも、関連テーブルのデータをフロントエンドで取得できます.
変換元:http://www.php.cn/python-tutorials-362108.html