sql >> Databasteknik >  >> RDS >> PostgreSQL

Django &Postgres - percentil (median) och gruppera efter

Du kan skapa en Median underordnad klass av Aggregate klass som gjordes av Ryan Murphy (https://gist.github.com/rdmurphy/3f73c7b125eb a> ). Median fungerar då precis som Avg :

    from django.db.models import Aggregate, FloatField


    class Median(Aggregate):
        function = 'PERCENTILE_CONT'
        name = 'median'
        output_field = FloatField()
        template = '%(function)s(0.5) WITHIN GROUP (ORDER BY %(expressions)s)'

Sedan för att hitta medianen för en fältanvändning

    my_model_aggregate = MyModel.objects.all().aggregate(Median('period'))

som sedan är tillgänglig som my_model_aggregate['period__median'] .



  1. Skapa en sammanfattningsvy i MySQL genom att svänga raden till ett dynamiskt antal kolumner

  2. SQL Injection och LIMIT-satsen

  3. Huvudsaklig användning av sys.dm_os_wait_stats

  4. SQL Server 2008 Intellisense-problem