Comment

Paolo Melchiorre

Best optimization
I start thinking to suggest this solution before reading the "Update" section.

P.S. They added "MD5" database function in Django dev:
https://docs.djangoproject.com/en/dev/ref/models/database-functions/#md5

Parent comment

James Bennett

Try this: from django.contrib.postgres.aggregates import StringAgg from django.db.models import Func result = Song.objects.filter( artist=artist ).aggregate( names_hash=Func( StringAgg('name', ''), function='md5' ) )