私のプロジェクトでは、同じモデルで同じビューで何度もクエリを行う必要がある状況に直面しています。 (この場合、djangoとpostgresqlを使用しているdjangoモデル)。データベースでのクエリ
これのための第1のアプローチは、同じモデル上で複数回フィルタリングすることです。
もう1つのアプローチは、モデルに対してクエリを実行し、すべてのデータを取得してローカル変数に保存することです。それから私はその変数を何度かフィルタリングすることができます。
どのアプローチが最も効率的であるかは、私がより速く、どのアプローチを通過すべきかを意味します。
私は人々という名前のモデルを持っていると私は、次の2つのアプローチを取ることができると言うことができます:
(1)
active_peoples = People.objects.filter(active=True)
lazy_peoples = People.objects.filter(lazy=True)
inactive_peoples = People.objects.filter(active=False)
good_peoples = People.objects.filter(good=True)
bad_peoples = People.objects.filter(good=False)
あるアプローチ(2)
peoples = People.objects.all()
lazy_peoples = peoples.filter(lazy=True)
inactive_peoples = peoples.filter(active=False)
good_peoples = peoples.filter(good=True)
bad_peoples = peoples.filter(good=False)
もっと早く??
具体的な例がない場合、これはあまりにもあいまいである – Sayse