こんにちは私は自分のプロジェクトで3つのモデルを持っていて、内部結合クエリを実行したいと思います。Django inner Joinデータベースクエリ
class Experiment(models.Model):
experiment_id = models.AutoField(primary_key=True)
experiment_name = models.CharField(max_length=500)
class DataFile(models.Model):
file_id = models.AutoField(primary_key=True)
file_name = models.CharField(max_length=500)
experiment_id = models.IntegerField(blank=True, null=True)
date = models.DateTimeField(blank=True)
created_on = models.DateTimeField(auto_now_add=True)
class Analysis(models.Model):
sample_name = models.CharField(max_length=500)
file_id = models.IntegerField(blank=True, null=True)
私は
Experiment.objects.filter(experiment_id__sample_name=18)
を試みた実験のID を使用して、すべてのサンプル名の名前を抽出したい私はpostgreを使用していると私がしようとしているクエリが
select experiment_name,ma.rt
FROM main_experiment me
INNER JOIN main_datafile md
ON me.experiment_id = md.experiment_id
INNER JOIN main_analysis ma
ON ma.file_id = md.file_id
です
と他の多くの組み合わせが、私は常に以下のエラーを取得します。
フィールドでAutoFieldまたはジョインにサポートされていないルックアップ ''がサポートされていません。
をチェックしましたか? http://stackoverflow.com/questions/42984676/django-equivalent-for-sql-query-using-inner-join-clause – giaco
@giacoはい私はAnalysis.objects.filter(sample_name__file_id = 257)を試しましたが、上記のエラー – dexter