Dim drs As New List(of DataRow)
drs = DataTables("编号").SQLSelect("机构id = '" & Vars("jigou_id") & "'") 用时 99毫秒
Dim drs As New List(of DataRow)
drs = DataTables("编号").SQLSelect("机构id is null") 用时20000毫秒
虽然以上在数据库里 行数是一样的,但是查询效率 相差200倍,这是什么原因?
正常的,null查询会导致全表扫描,表格数据越多就越慢。这个是SqlServer的基本常识,网上搜搜就有。如果可以尽量不要使用null查询。
一些数据库的优化可以看看:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158943&replyID=&skin=1