NOT IN
句のSQLクエリがありますが、実行には時間がかかりすぎます。誰でも下のクエリのNOT IN
を交換するのを手伝ってください。'NOT IN'を含むSQLクエリに時間がかかりすぎる
Select
RIGHT(P.PARTNERDESCRIPTION, LEN(P.PARTNERDESCRIPTION) - CHARINDEX('-', P.PARTNERDESCRIPTION)) AS Channel,
C.CorporateId, C.corporatename,
MAX(convert(date,E.C3DeletionVerification))
from
employee E, Corporate C, Partners P
where
E.corporateid = C.corporateid
and C.partner = P.partnercode
and C.Corporateid not in (select CorporateId
from employee
where DeletionVerification is null
and CardNo IS NOT NULL
group by CorporateId)
group by
RIGHT(P.PARTNERDESCRIPTION, LEN(P.PARTNERDESCRIPTION) - CHARINDEX('-', P.PARTNERDESCRIPTION)),
C.CorporateId, C.corporatename
order by
MAX(convert(date, E.DeletionVerification))
内側のクエリで 'group by'を削除して、 – HoneyBadger
を開始することができます。実際の実行計画をxmlとテーブルの数として表示できますか? – TheGameiswar
[古いスタイルのJOINを使用する] /sqlblog.com/blogs/aaron_bertrand/archive/2009/10/08/bad-habits-to-kick-using-old-style-joins.aspx) - 古いスタイルの*カンマで区切られたテーブルのリスト*スタイルはANSI - ** 92 ** SQL標準(** 20年以上前**)で*適切な* ANSI 'JOIN'構文に置き換えられ、その使用は避けてください –