私は以下を最適化する方法を探しています:
SELECT
(SELECT SUM(amount) FROM Txn_Log WHERE gid=@gid AND txnType IN (3, 20)) AS pendingAmount,
(SELECT COUNT(1) FROM Txn_Log WHERE gid = @gid AND txnType = 11) AS pendingReturn,
(SELECT COUNT(1) FROM Txn_Log WHERE gid = @gid AND txnType = 5) AS pendingBlock
ここで、@ gidはパラメーターであり、gidはこのテーブルのインデックスフィールドです。問題:各サブクエリは同じエントリのセットで再実行されます-3回の再実行は2回多すぎます。