Talk About Network

Google


Register and Login
Nick
Password
Register create new account Sign up is FREE and you can post replies, new topics, bookmark posts and more!
Recover lost password


Data Bases > Sybase > HOW CAN I DO TH...
Latest [ Topics | Posts ] Archive Post A New Topic Post a Reply
<< Topic < Post Post 1 of 2 Topic 2447 of 2504
Post > Topic >>

HOW CAN I DO THIS FASTER II

by Jorge Reyes <jorg_reyes@[EMAIL PROTECTED] > Apr 14, 2008 at 09:53 AM

Hi Manish Negandhi, thank you for the previous response, i have some
doubts about this:

(1)Remove "cursor" from the stored proc and apply temp table logic
there. i.e. write a code to apply the logic using temp table instead
of cursors. cursors perform very slow compare to the plain sql

i thought that cursors were better than temp tables, i am little
confused about this, in a forum of MSSQL recommend me this:

>>>>>>>>>
You can avoid several seek/scans by using CASE expressions in a single
query
instead of separate aggregate subqueries.  For example:
SELECT
    @[EMAIL PROTECTED]
 = 0,
    @[EMAIL PROTECTED]
 = 0,
    @[EMAIL PROTECTED]
 = 0
 SELECT
    @[EMAIL PROTECTED]
 = SUM(CASE WHEN B.corpo_id = 'BAZ' THEN 1 ELSE 0
END),
    @[EMAIL PROTECTED]
 = SUM(CASE WHEN B.corpo_id = 'EKT' THEN 1 ELSE 0
END),
    @[EMAIL PROTECTED]
 = SUM(CASE WHEN B.corpo_id = 'IUS' THEN 1 ELSE 0 END)
 FROM #TMP_UB_TOTGRALBYSIDNID AS A
 LEFT JOIN usr_mines AS B ON A.MINid = B.MIN_id
 WHERE
    A.PMM_DATETIME BETWEEN @[EMAIL PROTECTED]
 AND @[EMAIL PROTECTED]
 AND
    A.SID = @[EMAIL PROTECTED]
 AND A.NID = @[EMAIL PROTECTED]
 think you can get the most performance improvement by using a set-
based
insert/update instead of a cusor.  With Microsoft SQL Server, you
could
probably eliminate the temp tables and use techniques like derived
tables
but I don't know what you can and can't do in Sybase

>>>>>>>>>>>

(2)Get showplan for the proc and find out if any queries inside the
proc preforms "Table Scan". You can find showplan for a proc without
actually executing it by turning "set fmtonly" to on

i am so sorry but i dont understand nothing about this, you mean that
first i have to avoid cursors and then execute the sp like this:

set fmtonly;
exec PR_.....

Thank you so much for your help, I really appreciate your time on this.




 2 Posts in Topic:
HOW CAN I DO THIS FASTER II
Jorge Reyes <jorg_reye  2008-04-14 09:53:08 
Re: HOW CAN I DO THIS FASTER II
"Carl Kayser" &  2008-04-16 14:09:30 

Post A Reply:
  Go here to Signup

AddThis Feed Button


About - Advertising - Contact - Frequently Asked Questions - Privacy Policy - Terms of Use - Signup

Contact
tan13V112 Fri Jul 4 16:00:42 CDT 2008.