SQL SELECT最主要的一个特点,是它会根据查询需要自动建立临时索引,哪怕你的表本来没有索引,它也是会自己建的,只不过查询完毕后会删除掉,这也这类语句占用资源大的主要原因。无论是SQL SELECT还是VFP内部的检索指令,高效的关键点是索引。VFP之所以高速无与伦比的技术原因是它的索引文件高效,内嵌的SQL指令是使用自身检索技术实现的,但是这种索引数据结构的关键字(Key)却有局限性,不能太大,否则用于比较关键字的时间会过长,抵消高效,这就是它的索引字段长度有限制的原因——其他的大型数据库因为需要对更多种类的数据类型字段也能检索,没有这种限制,故在它们的SQL SELECT算法中就不会出现这种问题。对某些涉及备注型字段的查询,若算法需要此字段有索引才能提速,那么SQL SELECT算法会替这个字段建立索引,而这个索引被VFP自身的索引文件机制限制。
这里,同时也解释了VFP的SQL SELECT有独特扩展和为什么存在不与标准SQL SELECT语法完全一致的原因。
这里,同时也解释了VFP的SQL SELECT有独特扩展和为什么存在不与标准SQL SELECT语法完全一致的原因。
授人以渔,不授人以鱼。