Foxtable(狐表)用户栏目专家坐堂 → 查询速度


  共有1898人关注过本帖树形打印复制链接

主题:查询速度

美女呀,离线,留言给我吧!
联友
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:300 积分:2565 威望:0 精华:0 注册:2013/5/23 9:49:00
查询速度  发帖心情 Post By:2016/11/16 14:42:00 [只看该作者]

  下面代码查询时速度非常慢

e.Form.controls("Table1").Table.Fill("Se  lect  学期,班级,b.学生编号,b.学生姓名,性别,父亲姓名,母亲姓名,暂住社区,接送地点 Fr om {学生基本信息} a Inner JOIN {缴费信息} b ON a.学生编号 = b.学生编号 WHERE 学期 = '2016年秋季' And 缴费项目 = '餐费' And 缴费状态 = '已缴'And b.学生编号 Not In (Se lect  学生编号 Fr om {缴费信息} WHERE 学期 = '2016年秋季' And 缴费项目 = '车费' And 缴费状态 = '已缴') ORDER BY 班级,b.学生编号","数据库", True)

能不能先查询,再删除符合条件的

e.Form.controls("Table1").Table.Fill("Se  lect  学期,班级,b.学生编号,b.学生姓名,性别,父亲姓名,母亲姓名,暂住社区,接送地点 Fr om {学生基本信息} a Inner JOIN {缴费信息} b ON a.学生编号 = b.学生编号 WHERE 学期 = '2016年秋季' And 缴费项目 = '餐费' And 缴费状态 = '已缴'And b.学生编号  ORDER BY 班级,b.学生编号","数据库", True)

 

 

Dim cmd As New SQLCommand 
Dim dt As DataTable
cmd.C
cmd.CommandText = "Sel  ect  学期,学生编号 Fr om {缴费信息} WHERE 学期 = '2016年秋季' And 缴费项目 ='车费' And 缴费项目 = '已缴'"
dt = cmd.ExecuteReader()
删除符合条件的,请指教,谢谢

[此贴子已经被作者于2016/11/16 14:43:04编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
jspta
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:七尾狐 帖子:1732 积分:11266 威望:0 精华:0 注册:2011/12/15 22:06:00
  发帖心情 Post By:2016/11/16 14:48:00 [只看该作者]

用exists代替 in查询 会快一些。
在数据库中写存储过程删除就可以了。 

 回到顶部
帅哥,在线噢!
有点蓝
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110818 积分:564034 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/16 14:59:00 [只看该作者]

缴费项目 = '餐费',都已经限定了条件后,还会查询出来缴费项目 = '车费'的内容?not in 还有必要吗

 回到顶部
美女呀,离线,留言给我吧!
联友
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:小狐 帖子:300 积分:2565 威望:0 精华:0 注册:2013/5/23 9:49:00
  发帖心情 Post By:2016/11/16 19:00:00 [只看该作者]

餐费、车费在同一表上

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110818 积分:564034 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/11/16 20:11:00 [只看该作者]

缴费项目是多选的吗,一行记录会同时包含餐费和车费?

 回到顶部
帅哥哟,离线,有人找我吗?
有点青
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:573 积分:2961 威望:0 精华:0 注册:2016/10/27 14:33:00
  发帖心情 Post By:2016/11/17 8:54:00 [只看该作者]

 具体有多慢?做个例子上来看看。你试试在数据库里面添加索引。

 回到顶部