Здесь приведена таблица результатов тестирования хинтов.
Пояснения к таблице даны в совете Index hints и MS SQL (http://axapta.mazzy.ru/lib/indexhints/)
| FORCEPLACEHOLDERS | |||||||
| select | select firstonly | select firstfast | index hint | join | join forceselectorder | join forceNestedLoop | |
| default | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE (DATAAREAID=@P1) OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001RECID) NOLOCK ) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) OPTION(FAST 2) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001RECID) NOLOCK ) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001IX_VALUE) NOLOCK) WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15, FORCE ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15, LOOP JOIN) |
| 0 | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 1 (HINT_INDEX) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001RECID)) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001RECID)) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(INDEX(I_50001IX_VALUE) ) WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 2 (HINT_FASTFIRST) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) |
| 4 - HINT_FIRSTONLY | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 8 (HINT_NOLOCK) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 16 (HINT_FASTFORWARDONLY) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 32 (HINT_FORCE_SELECT_ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FORCE ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 64 (HINT_TOP) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 68 (HINT_TOP + HINT_FIRSTONLY) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT TOP 1 A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT TOP 1 A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 128 (HINT_FORCE_NESTED_LOOP) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID=@P1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (RECID=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID=@P1) AND (VALUE=@P2)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(LOOP JOIN) |
FORCELITERALS |
|||||||
| select | select firstonly | select firstfast | index hint | join | join forceselectorder | join forceNestedLoop | |
| default | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE (DATAAREAID="dmo") OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (RECID=26330)) OPTION(FAST 2) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (RECID=3470)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE OPTION(FAST 47) | SELECT A.VALUE, A+F4.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15, FORCE ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15, LOOP JOIN) |
| 0 | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=27144)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=25615)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 1 (HINT_INDEX) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=27914)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=6335)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 2 (HINT_FASTFIRST) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=30497)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=21412)) OPTION(FAST 1) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE OPTION(FAST 47) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FAST 15) |
| 4 - HINT_FIRSTONLY | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=31033)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=14679)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 8 (HINT_NOLOCK) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (RECID=31461)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (RECID=13696)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A(NOLOCK) WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A(NOLOCK) , HINTTABLE B(NOLOCK) , HINTTABLE C(NOLOCK) WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 16 (HINT_FASTFORWARDONLY) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=31836)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=4579)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 32 (HINT_FORCE_SELECT_ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=374)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=11333)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(FORCE ORDER) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 64 (HINT_TOP) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID='dmo') AND (RECID=773)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID='dmo') AND (RECID=11919)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 68 (HINT_TOP + HINT_FIRSTONLY) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT TOP 1 A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID='dmo') AND (RECID=1236)) | SELECT TOP 1 A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID='dmo') AND (RECID=30865)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) |
| 128 (HINT_FORCE_NESTED_LOOP) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE (DATAAREAID="dmo") | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=1847)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (RECID=9201)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID FROM HINTTABLE A WHERE ((DATAAREAID="dmo") AND (VALUE="some value")) ORDER BY A.DATAAREAID, A.VALUE | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) | SELECT A.VALUE, A.MODIFIEDTIME, A.CREATEDTIME, A.RECID, B.VALUE, B.MODIFIEDTIME, B.CREATEDTIME, B.RECID, C.VALUE, C.MODIFIEDTIME, C.CREATEDTIME, C.RECID FROM HINTTABLE A, HINTTABLE B, HINTTABLE C WHERE (A.DATAAREAID=@P1) AND ((B.DATAAREAID=@P2) AND (A.RECID=B.RECID)) AND ((C.DATAAREAID=@P3) AND (B.RECID=C.RECID)) OPTION(LOOP JOIN) |
Пояснения к таблице даны в совете Index hints и MS SQL (http://axapta.mazzy.ru/lib/indexhints/)