SQL.Text := 'select * from T_BWL where CLASS =' + QuotedStr('BJ');
这样查询了一次结果,就是想把 BJ 里的内容查出来,
然后在 BJ 里面再次查询包含 111 的内容,各位老师是怎么做的,谢谢!
为什么不直接在where里加and条件呢....
SQL执行, 如果你没有建立索引 无论如何都会循环全表找出BJ和循环全表找出BJ and 111效率没差别
如果你有建立BJ的索引 那么加了and 111 也是先利用索引取出BJ 然后循环取111
如果有建立BJ和111的联合索引, 那一次性直接命中记录, 比你分2次查找效率高多了
直接再次查询一次就可以了。我明白你的意思,你希望从查找的结果中搜索,似乎可以比从全部数据里面查找快一些。但是实际上这个时间差异不明显的。