Python django sql:用于查询集的sql
我有以下两个表格:Python django sql:用于查询集的sql,python,sql,django,Python,Sql,Django,我有以下两个表格: puzz_meeting_candidats : - id, canceled, candidat_id, meeting_id puzz_meeting : - id, Client 我有以下疑问: SELECT U1.`candidat_id` AS Col1 FROM `puzz_meeting_candidats` U1 INNER JOIN `puzz_meeting` U2 ON ( U1.`meeting_id` = U2.`id` ) WHE
puzz_meeting_candidats :
- id, canceled, candidat_id, meeting_id
puzz_meeting :
- id, Client
我有以下疑问:
SELECT U1.`candidat_id` AS Col1 FROM `puzz_meeting_candidats` U1
INNER JOIN `puzz_meeting` U2 ON ( U1.`meeting_id` = U2.`id` )
WHERE U2.`Client` LIKE '%ipsos%' AND U1.`canceled` = False
如何在Django中使用Q对象将上述查询转换为带条件的queryset。非常感谢你的帮助!!!:D假设您的模型看起来像这样:
class PuzzMeetingCandidats(models.Model):
canceled = models.BooleanField(default=False)
candidat = models.ForeignKey('Candidat')
meeting = models.ForeignKey('PuzzMeeting')
class PuzzMeeting(models.Model):
Client = models.CharField(max_length=128, null=True)
您可以编写这样的查询,而无需使用Q
:
qs = PuzzMeetingCandidats.objects.filter(
canceled=False,
meeting__Client__contains='ipsos')
也就是说,您尚未发布您的模型,我们需要先查看这些模型,以帮助您编写查询。您的问题在哪里?请编辑,您的问题完全不清楚。谢谢您的回答!但我需要使用Q对象,因为我要进行动态查询。对不起@NhatAnh,我不明白你的意思。上面的qs与您发布的SQL相匹配。我需要相同的:qs=puzzmeetingcandidates.objects.filter(Q(cancelled=False),Q(meeting\u Client\uu contains='ipsos')),因为我的问题只是完整查询的一部分。@2故事的寓意是不要回答像这样模糊的问题