1

item_tiersテーブルに関連するitemsテーブルがあります。2番目のテーブルは、アイテムテーブル内のアイテムの在庫レシートで構成されています。item_tiersテーブルには、itemsテーブルの1つのレコードに関連する0個以上のレコードが存在する可能性があります。クエリを使用して、アイテム層に1つ以上のレコードがあるレコードのみを取得するにはどうすればよいですか。

結果=session.query(Item).filter(???)。join(ItemTier)

擬似コードでのフィルターピースは、次のようになります。item_tiersテーブルにitemに関連する1つ以上のレコードがある場合。

4

2 に答える 2

1

テーブル間に外部キーが定義されている場合、SA が結合条件を計算します。追加のフィルターは必要ありません。

あります、そして私は本当にこれを考えていました。迅速な対応ありがとうございます。– オムヌス

于 2012-07-31T19:03:16.997 に答える
0
results = session.query(Item).join(ItemTier).filter(Item.foreign_key=ItemTier.column_with_keys).all()
于 2016-12-28T20:37:04.933 に答える