Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

139
Views
Suma de errores en la solicitud sql

tengo modelo:

 class Sales(ModelWithCreator, models.Model): date = models.DateField(default=datetime.date.today) merchandise = models.ForeignKey(Merchandise) partner = models.ForeignKey(Partner) count = models.PositiveIntegerField() debt = models.PositiveIntegerField(default=0) price = models.PositiveIntegerField() cost = models.PositiveIntegerField()

Tengo que obtener la suma de todos los objetos que modelan. Intenté eso:

 Sales.objects.all().extra(select={ 'total': 'Sum(price * count - cost)' })

Pero, tengo un error:

la columna "sales_sales.id" debe aparecer en la cláusula GROUP BY o usarse en una función agregada LÍNEA 1: SELECCIONAR (Suma (precio * recuento - costo)) AS "total", "sales_sales"...

over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

Creo que es posible que desee utilizar la función .aggregate() . Consulte la documentación de Django para Agregación .

Algo como esto (aunque no lo he probado):

 Sales.objects.all().aggregate( total = Sum((F(price)*F(count)) - F(cost)) )

Además, esa misma documentación sugiere usar la función .query() para ver cuál es la consulta resultante. Eso podría ayudarte a ver qué está fallando.

over 4 years ago · Santiago Trujillo Report

0

Prueba esto

 Sales.objects.all().extra(select={ 'total': 'Sum(price * count - cost)' }).values("total")
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!