0

私は2つのテーブルを持っていsubscriptionsますuser_subscription. ユーザーがまだ購読していないものをnameフィールドから検索できるようにしたかったのです。subscription以下のようにSQLクエリを書きました:

select e.*
from subscription e, user_subscription u
where e.id != u.sub_id and u.user_id = 7 and e.name like '%mic%'
order by name limit 0,50

私の質問は、django orm フレームワークを使用してこのクエリを実行する方法はありますか? 私はsubscriptionテーブルの検索を適切に行うことができます。問題は、ユーザーが既に購読している場合、それらの結果を表示したくないということです。のsub_idフィールドは、 IDuser_subscriptionへの外部キー関係のマッピングです。subsciption

4

1 に答える 1

1

はい - Manager.rawメソッドを調べてください。これにより、生の SQL クエリを実行できます。クエリに使用したいと思いSubscription.objects.raw(...)ます。

于 2012-08-30T18:22:38.940 に答える