如何在Django中匹配不相关的表

如何在Django中匹配不相关的表,django,database,django-models,django-queryset,Django,Database,Django Models,Django Queryset,我有两张不相关的表格- class DedupeDataModel(models.Model): clean_name = models.CharField(max_length=200) class SalesforceDataModel(models.Model): clean_name = models.CharField(max_length=200) salesforce_id = models.CharField(max_length=50) 我想匹配两个

我有两张不相关的表格-

class DedupeDataModel(models.Model):
    clean_name = models.CharField(max_length=200)

class SalesforceDataModel(models.Model):
    clean_name = models.CharField(max_length=200)
    salesforce_id = models.CharField(max_length=50)

我想匹配两个表中的clean_name列,以从SalesforceDataModel表中获取salesforce_id。我尝试了选择与表相关的来匹配表,但由于它们不相关,所以我没有得到结果。请提出建议。提前谢谢

你为什么不像下面这样询问他们

matching_salesforce_ids=[]
for each in DedupeDataModel.objects.all():
   models=SalesforceDataModel.objects.filter(clean_name=each.clean_name)
   if len(models)>0:
     matching_salesforce_ids.append(models.first().salesforce_id)
   
我假设你有一个SalesforceDataModel为每个干净的名字

--编辑---

你也可以试试这个

clean_names=DedupeDataModel.objects.all().values('clean_name')
salesforceids=SalesforceDataModel.objects.filter(clean_name__in=clean_names).values('salesforce_id')

对不起,我不知道为什么我以前没有想过这个

我在每个表中有将近10万行,所以我想这不是一个非常有效的方法。。不管怎样,谢谢你的回答。我刚刚编辑了我的答案,请看看这是否适合你!价值观让一切变得更快!哦,这太棒了!!谢谢