以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=111205) |
-- 作者:fubblyc -- 发布时间:2017/12/17 19:53:00 -- 后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升 甜老师, 后台数据,不同分公司,分开表存放比放在一张表,查询速度是否会提升 分开存放,查询不影响业务,就是会麻烦点 所以想了解下这样操作查询速度会不会变快。 现在几个分公司的数据放在一张表,通过手机一个简单的查询,会导致服务端CPU占用剧增,容易死掉。 所以想看是不是分开存放查询会不会好点。。。
[此贴子已经被作者于2017/12/17 19:53:50编辑过]
|
-- 作者:fubblyc -- 发布时间:2017/12/17 20:16:00 -- 同类型的数据。 可以简单地理解为不同的客户,互不影响。之前是放在一张表,现在正在想是不是按客户分开存储,查询,以提升速度 另外一个问题,在一个库里,有一张表,数据量特别大,会对其他表的查询速度产生影响吗?
[此贴子已经被作者于2017/12/17 20:26:12编辑过]
|
-- 作者:有点甜 -- 发布时间:2017/12/17 21:10:00 -- 分开表也提高不了效率的。区分不同的表,只是一个简单的查询,不会影响效率的。
如果觉得慢,你可以加索引;或者优化一下你的查询语句。 |
-- 作者:fubblyc -- 发布时间: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
|
-- 作者:有点甜 -- 发布时间:2017/12/17 23:03:00 -- 这样写,不然你要把所有数据加载进来,怎么可能不慢?
cmd.CommandText = "SELECT * From {明细} where 1=2"
dt = cm d.ExecuteReader()
|
-- 作者:fubblyc -- 发布时间:2017/12/17 23:15:00 -- 恩恩。没错。测试了,这样确实快!! 谢谢甜老师!!
|
-- 作者:有点蓝 -- 发布时间:2017/12/18 9:36:00 -- 直接一条语句即可,没有必要再使用SQ LFind,还要连接2次数据库 cm d.CommandText = "SELEC T * From {明细} where [手机号码] = \'" & e.PostValues("sj") & "\'"
|