tuve un problema similar; básicamente quería concatenar dos campos para obtener el nombre completo de un usuario. Lo tengo resuelto de esta manera (pero hay que decir que yo estaba usando Postgres):
from django.db.models.functions import Concat
from django.db.models import F, Value, CharField
AnyModel.objects.filter(**kwargs).annotate(full_name=Concat(F('model__user_first_name'), Value(' '), F('model__user_last_name'), output_field=CharField()))
donde, F ('...') evalúa su argumento como una consulta, por lo que puede consultar un campo de el modelo en sí, o abarque todos los modelos como lo haría en filter/get, mientras que Value ('...') evalúa su argumento literalmente (en mi caso necesitaba un espacio para colocar entre first_name y last_name), y output_field = ... especifica el tipo del campo anotado (yo quería ser un CharField). Para obtener más información, puede leer Django docs about Concat
Espero que sea útil para alguien por ahí. Cheers
Gracias por la respuesta detallada – Zach
En SQLite es aún menos útil: ¡simplemente establece el texto en "0"! – boxed