これは私が使用しているクエリです:
SELECT p.name, p.id
FROM v_emp e
INNER JOIN v_prof p ON e.code = p.code
WHERE e.emp_id IN (SELECT a.id
FROM t_approval a
WHERE a.code1 <> 'R'
AND a.code2 = 'P'
AND a.date1 IS NULL
AND a.date2 IS NULL
AND a.code3 = 'ADMIN'
GROUP BY a.id
)
GROUP BY p.name, p.id
ORDER BY p.name
クエリの実行には4分以上かかります。テーブルt_approvalには1500万を超えるレコードがあり、検索条件に一致するこのテーブルからの個別のIDが必要です。
このテーブルには、すでにid、code1、code2、code3のインデックスがあります。
これをより速く実行する方法を教えてください。