PostgreSQL
 sql >> डेटाबेस >  >> RDS >> PostgreSQL

Django ORM में postgresql विंडो फ़ंक्शंस का उपयोग करने का साफ तरीका?

Django 2.0 के बाद से यह ORM में अंतर्निहित है। विंडो-फ़ंक्शंस देखें

# models.py
class GameScore(models.Model):
     user_id = models.IntegerField()
     score = models.IntegerField()

# window function usage
from django.db.models.expressions import Window
from django.db.models.functions import Rank

GameScore.objects.annotate(rank=Window(
    expression=Rank(),
    order_by=F('score').desc(),
    partition_by=[F('user_id')]))

# generated sql
SELECT "myapp_gamescore"."id",
   "myapp_gamescore"."user_id",
   "myapp_gamescore"."score",
   RANK() OVER (
     PARTITION BY "myapp_gamescore"."user_id"
     ORDER BY "myapp_gamescore"."score" DESC
   ) AS "rank"
FROM "myapp_gamescore"


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. पैटर्न मिलान का उपयोग करने में त्रुटि PostgreSQL में किसी की तरह नहीं

  2. कैसे Justify_interval () PostgreSQL में काम करता है

  3. ActiveRecord::AdapterNotनिर्दिष्ट डेटाबेस कॉन्फ़िगरेशन एडेप्टर निर्दिष्ट नहीं करता है

  4. PostgreSQL में उपयोगकर्ता परिभाषित चर

  5. PostgreSQL 8.4 में कॉलम डेटाटाइप को कैरेक्टर से न्यूमेरिक में कैसे बदलें?