sql >> Databasteknik >  >> RDS >> PostgreSQL

Konvertera django RawQuerySet till Queryset

Du kan använda ett RawSQL-uttryck:

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

Alternativt kan du återskapa den exakta frågan du har i din fråga med extra():

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


  1. Vad är nolltecken bokstavlig i TSQL?

  2. Syntaxfel på grund av att ett reserverat ord används som tabell- eller kolumnnamn i MySQL

  3. UTF-8 hela vägen igenom

  4. Ställ in databas och skapa en skrivskyddad användare i AWS Redshift och Mysql