コードのブートストラップ内で作成された 200 を超えるインスタンスを持つクラス (db 行を反映する) があります。それぞれSELECT
に唯一の条件を持つ単一のクエリがありますが、ロジックでWHERE 'tblA'.'AID' = #
接続された200個のWHERE句を解析する単一のクエリを作成することを考えていましたOR
。その後、結果から、すでに見つかったデータで200個のオブジェクトが作成されるため、クエリは 1 つだけです。
現時点でこれをテストサーバーに実装していますが、これは効率の悪いステップではないかと考えていました.2セットのクエリを実行して、それぞれの句の半分を処理する方が良いのはいつですか(またはどのようにこれまで以上に多くのことを行う必要があります)?
さらに、次のようなものを置き換えるためにパフォーマンスエンハンサーも書いています
WHERE `tblA`.`AID` = 2 OR `tblA`.`AID` = 3 OR `tblA`.`AID` = 5 OR `tblA`.`AID` = 6 OR `tblA`.`AID` = 7
と
WHERE (`tblA`.`AID` >= 2 AND `tblA`.`AID` <= 3) OR (`tblA`.`AID` >= 5 AND `tblA`.`AID` <= 7)
あるいは
WHERE `tblA`.`AID` >= 2 AND `tblA`.`AID` <= 7 AND `tblA`.`AID` <> 4