Looks like MySQL 5.4 fixes that performance issue:<br><br><a href="http://dev.mysql.com/tech-resources/articles/mysql-54.html">http://dev.mysql.com/tech-resources/articles/mysql-54.html</a><br><br><div class="gmail_quote">
On Sat, Apr 18, 2009 at 6:01 PM, Brian Lavender <span dir="ltr">&lt;<a href="mailto:brian@brie.com">brian@brie.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Fri, Apr 17, 2009 at 11:20:01AM -0700, Bill Kendrick wrote:<br>
&gt;<br>
&gt; On Thu, Apr 16, 2009 at 06:06:21PM -0700, Bryan Richter wrote:<br>
&gt; &gt; 1. Definetely break out subqueries. A possible starting point would be creating a temp table of interesting categories. Temp tables are indispensible.<br>
&gt; &gt;<br>
&gt;<br>
&gt; Ah, my predecessor popped up and mentioned this discovery.  Instead of<br>
&gt; the subselect (&quot;AND bc.categoryid IN ( SELECT ... )&quot;), doing the following<br>
&gt; &#39;EXISTS&#39; test does the same thing.<br>
&gt;<br>
&gt; It now takes under 1 second, rather than 90 seconds.  A speed improvement<br>
&gt; of over 100x.  Yay :)<br>
&gt;<br>
&gt;   bill.beers_owed_to_people++;<br>
<br>
</div>I could go for some beer. Are you buying? :)<br>
<font color="#888888"><br>
--<br>
Brian Lavender<br>
<a href="http://www.brie.com/brian/" target="_blank">http://www.brie.com/brian/</a><br>
</font><div><div></div><div class="h5">_______________________________________________<br>
vox-tech mailing list<br>
<a href="mailto:vox-tech@lists.lugod.org">vox-tech@lists.lugod.org</a><br>
<a href="http://lists.lugod.org/mailman/listinfo/vox-tech" target="_blank">http://lists.lugod.org/mailman/listinfo/vox-tech</a><br>
</div></div></blockquote></div><br>