以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 查找空值和指定值的行,效率相差200倍以上 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=190879) |
-- 作者:xluoping -- 发布时间:2024/3/10 22:07:00 -- 查找空值和指定值的行,效率相差200倍以上 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倍,这是什么原因? |
-- 作者:有点蓝 -- 发布时间:2024/3/10 22:41:00 -- 正常的,null查询会导致全表扫描,表格数据越多就越慢。这个是SqlServer的基本常识,网上搜搜就有。如果可以尽量不要使用null查询。 一些数据库的优化可以看看:http://www.foxtable.com/bbs/dispbbs.asp?BoardID=2&ID=158943&replyID=&skin=1
|