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

Chuyển django RawQuerySet thành Queryset

Bạn có thể sử dụng biểu thức RawSQL:

ModelB.objects.filter(id__in=RawSQL(
    'SELECT unnest(a.pk_values) FROM app_modela a WHERE a.id = %s',
    [index_id]
))

Ngoài ra, bạn có thể tạo lại truy vấn chính xác mà bạn có trong câu hỏi của mình với thêm ():

ModelB.objects.extra(
    tables=['foo_modela'],
    where=[
        '"app_modelb"."id" = ANY("app_modela"."pk_values")',
        '"app_modela"."id" = %s',
    ],
    params=[index_id],
)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. xóa cột không tồn tại

  2. Các lỗi thường gặp khi di chuyển cơ sở dữ liệu PostgreSQL từ On-Prem sang AWS RDS

  3. Truy xuất tất cả các đặc quyền đối tượng cho vai trò cụ thể

  4. Trừ số năm cho một ngày trong PostgreSQL

  5. Hướng dẫn sử dụng pgBouncer cho PostgreSQL