Jajahama
Member
Откуда: Москва
Сообщений: 247
|
Это когда bind переменные типа Integer
SELECT p_post.ROWID aaa, p_post.*,
DECODE (p_post.bissummdone, 'T', 'Да', 'Нет') sb_done,
klient.vcklientname, kte.icurrencyid iklientcurrid,
currklient.vcbriefname
vcklientcurrname,
currpay.vcbriefname vcpaycurrname, clapaytype.vcname vcpaytype,
clapaytype.ipriznak
ipaytypepriznak, clapaynota.vcname vcpaynota,
users.vcfirstname
vcfio, tip_opr.vcname vctipopr,
tip_opr.ikod_type itipoprtype, tip_opr.ipriznak itipoprpriznak,
pck_plp.maintpoplsid (p_post.itip_oprid, 1, p_post.dtofor, 2)
iplsid
FROM ve_p_post p_post,
klient,
users,
classif clapaytype,
classif clapaynota,
tip_opr,
currency currpay,
currency currklient,
(SELECT *
FROM klienttypeext
WHERE klienttypeext.iuselid = :piuselid
AND klienttypeext.ikod_type = :pipostkod_type) kte
WHERE p_post.ip_postid BETWEEN :pisbrange AND :piebrange
AND p_post.iklientid = klient.iklientid
AND p_post.iusersid_enter = users.iusersid
AND p_post.ikod_paytype = clapaytype.ikod
AND p_post.icti_paytype = clapaytype.iclassiftypeid
AND p_post.ikod_nfwhat = clapaynota.ikod
AND p_post.icti_nfwhat = clapaynota.iclassiftypeid
AND p_post.itip_oprid = tip_opr.itip_oprid
AND p_post.icurrencyid_pay = currpay.icurrencyid
AND p_post.iklientid = kte.iklientid
AND kte.icurrencyid = currklient.icurrencyid
AND (p_post.bisarchive = :isarchive OR 'T' = :ignorearchivflag)
AND (p_post.inumber >= 33000 AND p_post.inumber <= 55000)
ORDER BY inumber
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 2 0.00 0.00 0 0 0 0
Execute 2 0.00 0.00 0 0 0 0
Fetch 2 61.42 61.49 0 64102 0 50
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 6 61.42 61.49 0 64102 0 50
Misses in library cache during parse: 0
Optimizer goal: CHOOSE
Parsing user id: 77
Rows Row Source Operation
------- ---------------------------------------------------
25 SORT ORDER BY
44 FILTER
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
516 TABLE ACCESS BY INDEX ROWID KLIENTTYPEEXT
516 INDEX RANGE SCAN IEKLIENTTYPEEXT_USELTYPE (object id 83290)
44 TABLE ACCESS BY INDEX ROWID P_POST
33692 BITMAP CONVERSION TO ROWIDS
278 BITMAP AND
278 BITMAP CONVERSION FROM ROWIDS
67381 INDEX RANGE SCAN FKP_POST_KLIENT (object id 83470)
278 BITMAP CONVERSION FROM ROWIDS
>9366376 SORT ORDER BY
>9366376 INDEX RANGE SCAN PKP_POST (object id 83471)
44 TABLE ACCESS BY INDEX ROWID CLASSIF
44 INDEX UNIQUE SCAN PKCLASSIF (object id 83045)
44 TABLE ACCESS BY INDEX ROWID CLASSIF
44 INDEX UNIQUE SCAN PKCLASSIF (object id 83045)
44 TABLE ACCESS BY INDEX ROWID TIP_OPR
44 INDEX UNIQUE SCAN PKTIP_OPR (object id 83736)
44 TABLE ACCESS BY INDEX ROWID USERS
44 INDEX UNIQUE SCAN PKUSERS (object id 83808)
44 TABLE ACCESS BY INDEX ROWID KLIENT
44 INDEX UNIQUE SCAN PKKLIENT (object id 83272)
44 TABLE ACCESS BY INDEX ROWID CURRENCY
44 INDEX UNIQUE SCAN PKCURRENCY (object id 83067)
44 TABLE ACCESS BY INDEX ROWID CURRENCY
44 INDEX UNIQUE SCAN PKCURRENCY (object id 83067)
********************************************************************************
|
|
А это когда bind переменные типа string
SELECT p_post.ROWID aaa, p_post.*,
DECODE (p_post.bissummdone, 'T', 'Да', 'Нет') sb_done,
klient.vcklientname, kte.icurrencyid iklientcurrid,
currklient.vcbriefname
vcklientcurrname,
currpay.vcbriefname vcpaycurrname, clapaytype.vcname vcpaytype,
clapaytype.ipriznak
ipaytypepriznak, clapaynota.vcname vcpaynota,
users.vcfirstname
vcfio, tip_opr.vcname vctipopr,
tip_opr.ikod_type itipoprtype, tip_opr.ipriznak itipoprpriznak,
pck_plp.maintpoplsid (p_post.itip_oprid, 1, p_post.dtofor, 2)
iplsid
FROM ve_p_post p_post,
klient,
users,
classif clapaytype,
classif clapaynota,
tip_opr,
currency currpay,
currency currklient,
(SELECT *
FROM klienttypeext
WHERE klienttypeext.iuselid = :piuselid
AND klienttypeext.ikod_type = :pipostkod_type) kte
WHERE p_post.ip_postid BETWEEN :pisbrange AND :piebrange
AND p_post.iklientid = klient.iklientid
AND p_post.iusersid_enter = users.iusersid
AND p_post.ikod_paytype = clapaytype.ikod
AND p_post.icti_paytype = clapaytype.iclassiftypeid
AND p_post.ikod_nfwhat = clapaynota.ikod
AND p_post.icti_nfwhat = clapaynota.iclassiftypeid
AND p_post.itip_oprid = tip_opr.itip_oprid
AND p_post.icurrencyid_pay = currpay.icurrencyid
AND p_post.iklientid = kte.iklientid
AND kte.icurrencyid = currklient.icurrencyid
AND (p_post.bisarchive = :isarchive OR 'T' = :ignorearchivflag)
AND (p_post.inumber >= 33000 AND p_post.inumber <= 55000)
ORDER BY inumber
call count cpu elapsed disk query current rows
------- ------ -------- ---------- ---------- ---------- ---------- ----------
Parse 9 0.00 0.00 0 0 0 0
Execute 9 0.00 0.00 0 0 0 0
Fetch 9 0.56 0.53 0 44370 0 225
------- ------ -------- ---------- ---------- ---------- ---------- ----------
total 27 0.56 0.54 0 44370 0 225
Misses in library cache during parse: 1
Optimizer goal: CHOOSE
Parsing user id: 77
Rows Row Source Operation
------- ---------------------------------------------------
25 SORT ORDER BY
44 FILTER
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 NESTED LOOPS
44 HASH JOIN
5 TABLE ACCESS BY INDEX ROWID CLASSIF
5 INDEX RANGE SCAN FKCLASSIF_CLASSIFTYPE (object id 83046)
44 TABLE ACCESS BY INDEX ROWID P_POST
33692 INDEX RANGE SCAN PKP_POST (object id 83471)
44 TABLE ACCESS BY INDEX ROWID KLIENTTYPEEXT
44 INDEX UNIQUE SCAN AKKLIENTTYPEEXT_TYPE (object id 87920)
44 TABLE ACCESS BY INDEX ROWID CLASSIF
44 INDEX UNIQUE SCAN PKCLASSIF (object id 83045)
44 TABLE ACCESS BY INDEX ROWID TIP_OPR
44 INDEX UNIQUE SCAN PKTIP_OPR (object id 83736)
44 TABLE ACCESS BY INDEX ROWID USERS
44 INDEX UNIQUE SCAN PKUSERS (object id 83808)
44 TABLE ACCESS BY INDEX ROWID KLIENT
44 INDEX UNIQUE SCAN PKKLIENT (object id 83272)
44 TABLE ACCESS BY INDEX ROWID CURRENCY
44 INDEX UNIQUE SCAN PKCURRENCY (object id 83067)
44 TABLE ACCESS BY INDEX ROWID CURRENCY
44 INDEX UNIQUE SCAN PKCURRENCY (object id 83067)
********************************************************************************
|
|
Объясните, почему так происходит |