PostgreSQL
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> PostgreSQL

Biểu thức truy vấn Django cho các trường được tính toán yêu cầu điều kiện và truyền

Sử dụng biểu thức điều kiện :

from django.db.models import Case, F, Sum, When

Stats.objects.values('product').annotate(
    tot_impressions=Sum('impressions'), 
    tot_clicks=Sum('clicks')
).annotate(
    ctr=Case(When(tot_impressions=0, then=None),  # or other value, e.g. then=0
             # 1.0*... is to get float in SQL
             default=1.0*F('tot_clicks')/F('tot_impressions'),
             output_field=models.FloatField())
).order_by('ctr')


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tính toán kết quả Doanh thu Định kỳ Hàng tháng (MRR) bằng cách sử dụng bưu điện

  2. kết nối phiên bản postgres sql của google cloud từ đường ống chùm

  3. Phạm vi cho một liên kết has_one tùy chọn với chính nó

  4. Kết quả trả về PostgreSQL được đặt dưới dạng mảng JSON?

  5. Tại sao kết quả đếm khác nhau trên các lần đọc liên tiếp?