我有一个类(反映一个 db 行),它在代码引导程序中创建了 200 多个实例。每个人都有一个SELECT
查询,唯一的条件是WHERE 'tblA'.'AID' = #
,但我正在考虑创建一个查询,它将解析由OR
逻辑连接的 200 个 WHERE 子句,然后从结果中,使用已经找到的数据创建了 200 个对象,所以有只有 1 个查询。
我目前正在测试服务器上实现这个,但我想知道这是否是提高效率的一个坏步骤,什么时候做两组查询会更好,每组处理一半的子句(或者如何还需要制作更多)?
另外,我还在其中编写了一个性能增强器来替换类似的东西
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