2017-04-22 7 views
1

私は以下のいくつかの内部選択操作からなるmysqlクエリを持っています。しかし、それはMysql Inner Select Optimization

SELECT 
      c.topicName as 'topicName', 
      c1 as 'sumOfWordsInTopic', 
      c.word, 
      c.wordCount, 
      c2/c1 AS 'wordProbability' 
      FROM weightallofwordsintopic as c 
      JOIN (
      SELECT topicName, sum(wordCount) AS 'c1' 
      FROM weightallofwordsintopic group by topicName 
      ) AS sub1 ON c.topicName = sub1.topicName 
      JOIN (
      SELECT topicName,word, wordCount AS 'c2' 
      FROM weightallofwordsintopic 

      ) AS sub2 ON c.topicName = sub2.topicName and c.word=sub2.word 

...そのクエリからの出力を得るために遅くすることですまず、内側の選択はwordCountsの総和をとり、もう一つはwordcountsし、それらの外側の選択テイク部門を取ります。もう少し速くする方法はありますか?あなたの興味をお寄せいただきありがとうございます。

答えて

0

まず、2番目のサブクエリがある理由はわかりません。私はこれがあなたが望むことをしなければならないと思う:

これは少し質問をスピードアップします。

+0

ありがとうございます。 – mstfky