Foxtable(狐表)用户栏目专家坐堂 → 后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升


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

主题:后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升

帅哥哟,离线,有人找我吗?
fubblyc
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升  发帖心情 Post By:2017/12/17 19:53:00 [只看该作者]

甜老师,
后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升
分开存放,查询不影响业务,就是会麻烦点
所以想了解下这样操作查询速度会不会变快。
现在几个分公司的数据放在一张表,通过手机一个简单的查询,会导致服务端CPU占用剧增,容易死掉。
所以想看是不是分开存放查询会不会好点。。。
[此贴子已经被作者于2017/12/17 19:53:50编辑过]

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2017/12/17 20:16:00 [只看该作者]

同类型的数据。
可以简单地理解为不同的客户,互不影响。之前是放在一张表,现在正在想是不是按客户分开存储,查询,以提升速度

另外一个问题,在一个库里,有一张表,数据量特别大,会对其他表的查询速度产生影响吗?
[此贴子已经被作者于2017/12/17 20:26:12编辑过]

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/17 21:10:00 [只看该作者]

分开表也提高不了效率的。区分不同的表,只是一个简单的查询,不会影响效率的。

 

如果觉得慢,你可以加索引;或者优化一下你的查询语句。


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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2017/12/17 22:23:00 [只看该作者]

甜老师,就是最简单的语句:
Dim cmd As New SQLCommand
Dim dt As DataTable
cm d.C
cm d.CommandText = "SELEC T * From {明细}"
dt = cm d.ExecuteReader()
Dim dr As DataRow = dt.SQ LFind("[手机号码] = '" & e.PostValues("sj") & "'")
If dr IsNot Nothing Then
    wb.AddPageTitle("","ph1","查询","")
    wb.AddForm("","form1","")
    With wb.AddInputGroup("form1","ipg3","信息")
        With .AddInput("gs","公司","text")
            .value = dr("公司")
            .Readonly = True
        End With
     end with
end if

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


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/12/17 23:03:00 [只看该作者]

这样写,不然你要把所有数据加载进来,怎么可能不慢?

 

cmd.CommandText = "SELECT * From {明细} where 1=2"
dt = cm d.ExecuteReader()

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


加好友 发短信
等级:九尾狐 帖子:2355 积分:16187 威望:0 精华:0 注册:2013/9/1 8:09:00
  发帖心情 Post By:2017/12/17 23:15:00 [只看该作者]

恩恩。没错。测试了,这样确实快!!
谢谢甜老师!!

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


加好友 发短信
等级:超级版主 帖子:110587 积分:562831 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2017/12/18 9:36:00 [只看该作者]

直接一条语句即可,没有必要再使用SQ LFind,还要连接2次数据库

cm d.CommandText = "SELEC T * From {明细} where [手机号码] = '" & e.PostValues("sj") & "'"

 回到顶部