sql >> Database teknologi >  >> RDS >> PostgreSQL

Django &Postgres - percentil (median) og grupper efter

Du kan oprette en Median underordnet klasse af Aggregate klasse, som det blev udført af Ryan Murphy (https://gist.github.com/rdmurphy/3f73c7b18aeb1826c7b215eb1825eb1825eb125eb125eb1825eb185eb a> ). Median fungerer derefter ligesom 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)'

Derefter for at finde medianen af ​​en markanvendelse

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

som derefter er tilgængelig som my_model_aggregate['period__median'] .



  1. Postgresql-forbindelsespooling i Erlang

  2. Sådan installeres MySQL på Debian 8

  3. Er der en MySQL svarende til PostgreSQL array_to_string

  4. Forskellen mellem JOIN og INNER JOIN