私が取り組んでいるプロジェクトでは、ベストマッチのためにキーをスキャンする必要があります。これらのスキャンだけが、テストシステムに負荷をかけています。どのように私はこれを改善することができるすべてのボディアイデア?私たちはすでに一時テーブルとカーソルを試しました。MySQL:ベストマッチを改善するための提案ストアドプロシージャ
我々が使用しているコードの例:代わりにちょうどIF EXISTS
を使用SELECT COUNT(*)
を使用しての
SET keyLength = (LENGTH(key)-1);
WHILE keyLength >=1 DO
SELECT COUNT(*) INTO resultCount FROM keytable
WHERE I ScreeningKey = (SELECT SUBSTRING(key)-,1,keyLength));
IF (0 < resultCount) THEN
SELECT ScreeningKey INTO bestMatchScreeningKey FROM keytable
WHERE AND ScreeningKey = (SELECT SUBSTRING(key)-,1,keyLength));
/*go to step4*/
LEAVE Step4;
END IF;
SET keyLength = keyLength-1;
END WHILE;
このコードは正確に何を実行しようとしていますか?そして、これはすべての手続きですか、あるいは一部ですか? –