DryORM
Code
Result
no cache
SQLite
PostgreSQL 17.4
MariaDB 11.4.5
Select a template
dryorm features
basic
bulk create
bulk fake
csv import
basic fk
self fk
user profile
dryorm tabular output
from django.db import models from django.db.models import Count from django.contrib.postgres.aggregates import ArrayAgg, StringAgg class Person(models.Model): name = models.CharField(max_length=100) def __str__(self): return self.name class Pet(models.Model): name = models.CharField(max_length=100) owner = models.ForeignKey(Person, related_name='pets', on_delete=models.CASCADE) def run(): # Create sample data person = Person.objects.create(name='John Doe') Pet.objects.bulk_create([ Pet(name='Rex', owner=person), Pet(name='Mittens', owner=person), Pet(name='Fido', owner=person), ]) # Aggregate all pet names into a single array and a string result = Person.objects.annotate( pet_count=Count('pets'), pet_names_array=ArrayAgg('pets__name'), pet_names_string=StringAgg('pets__name', delimiter=', ') ).get(id=person.id) print(f'{result.name} has {result.pet_count} pets.') print(f'Pet names (array): {result.pet_names_array}') print(f'Pet names (string): {result.pet_names_string}')
Output
Show Template
No output.
Queries
TCL
TCL
DDL
DDL
SELECT
S
INSERT
I
UPDATE
U
DELETE
D
REVERSE
R
Queries
Q
(
0
)
No queries.
✖ Close
Save & Share
✖
private?
Save
Save & Copy