C# で特定のメソッドに対して生の SQL を実行する必要があり (それ以外の場合は NHibernate を使用)、ORM 以外はほとんど使用しないため、クエリを別のテーブルにマージするのに苦労しています。この場合、私はそれらのうちの 3 つをクエリしています。2 番目のクエリの最後の行にある最初の単純な選択の結果からの offerId を使用したいと思います (ハードコードされた 1003 を使用する代わりに)。
SELECT * FROM [OFFER]
WHERE CampaignId = 1 AND Processed Is NULL
SELECT [BANK].* FROM [BANK]
INNER JOIN [REMINDER]
ON [BANK].personId = [REMINDER].personId AND [BANK].isCurrent = 1
WHERE [REMINDER].offerId = 1003
最初のクエリを実行してから foreach を使用しようとしましたが、結果としてデータベースへのクエリが多くなり、パフォーマンスが低下しますよね?
ありがとう