title: In Django I have a complex query where I need only the unique values through a foreign key, is this possible?
body: <p>I have the following models:</p>
  
  
  
  <pre class="lang-py prettyprint-override"><code>class Indicator(models.Model):
      name = models.CharField(max_length=200)
      category = models.ForeignKey(IndicatorCategory)
      weight = models.IntegerField()
      industry = models.ForeignKey(Industry)
  
      def __unicode__(self):
          return self.name
      class Meta:
          ordering = ('name',)
  
  class IndicatorRatingOption(models.Model):
      indicator = models.ForeignKey(Indicator)
      description = models.TextField()
      value = models.FloatField(null=True)
  
      def __unicode__(self):
          return self.description
  
  class Rating(models.Model):
      product = models.ForeignKey(Product, null=True)
      company = models.ForeignKey(Company, null=True)
      rating_option = models.ForeignKey(IndicatorRatingOption)
      value = models.IntegerField(null=True)
  </code></pre>
  
  <p>What I need to do is get all of the company rating options of two companies without having them overlap on their Indicators (<code>rating.rating_option.indicator</code>). If there's a conflict, company 'a' would always win over company 'b'. How do I do this?</p>