Foxtable(狐表)用户栏目专家坐堂 → 请教折叠


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

主题:请教折叠

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


加好友 发短信
等级:狐神 帖子:5055 积分:13047 威望:0 精华:0 注册:2014/5/15 21:34:00
请教折叠  发帖心情 Post By:2022/1/14 12:48:00 [只看该作者]

大师:请教功能代码?
在表格折叠的状态下,如何保证任意节点可见,并处于第一可见行?

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


加好友 发短信
等级:超级版主 帖子:107846 积分:548581 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/1/14 13:35:00 [只看该作者]


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


加好友 发短信
等级:狐神 帖子:5055 积分:13047 威望:0 精华:0 注册:2014/5/15 21:34:00
  发帖心情 Post By:2022/1/14 13:44:00 [只看该作者]

解决了,谢谢!

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


加好友 发短信
等级:狐神 帖子:5055 积分:13047 威望:0 精华:0 注册:2014/5/15 21:34:00
  发帖心情 Post By:2022/1/14 14:03:00 [只看该作者]

 请教sql语句的多表连接查询的效率问题: 哪一方法效率高?
1、直接用SQL连接语句查询
2、查询相关表,然后循环写入

比如下面的查询语句,35000行数据,要用5秒,如何优化?
 s_e_l_e_c_t c.km5,dtkmyeb5,dtkmyeb26,dtkmyeb33,dtkmyeb34,dtkmyeb35,dtkmyeb36,dtkmyeb37,dtkmyeb38,dtkmyeb39,dtkmyeb40,dtkmyeb28,dtkmyeb30,dtkmyeb41,dtkmyeb42,  iif(dtkmyeb33 is null,h.pzzb8,iif(dtkmyeb28 is not null,b.pzzb8,d.pzzb8)) as dtkmyeb8,  iif(dtkmyeb33 is null,h.pzzb9,iif(dtkmyeb28 is not null,b.pzzb9,d.pzzb9)) as dtkmyeb9,  iif(c.km5 = '借',iif(dtkmyeb30 is null,0,dtkmyeb30) + iif(dtkmyeb33 is null,iif(h.pzzb8 is null,0,h.pzzb8),iif(dtkmyeb28 is not null,iif(b.pzzb8 is null,0,b.pzzb8),iif(d.pzzb8 is null,0,d.pzzb8))) - iif(dtkmyeb33 is null,iif(h.pzzb9 is null,0,h.pzzb9),iif(dtkmyeb28 is not null,iif(b.pzzb9 is null,0,b.pzzb9),iif(d.pzzb9 is null,0,d.pzzb9))) , iif(dtkmyeb30 is null,0,dtkmyeb30) - iif(dtkmyeb33 is null,iif(h.pzzb8 is null,0,h.pzzb8),iif(dtkmyeb28 is not null,iif(b.pzzb8 is null,0,b.pzzb8),iif(d.pzzb8 is null,0,d.pzzb8))) + iif(dtkmyeb33 is null,iif(h.pzzb9 is null,0,h.pzzb9),iif(dtkmyeb28 is not null,iif(b.pzzb9 is null,0,b.pzzb9),iif(d.pzzb9 is null,0,d.pzzb9)))) as dtkmyeb10,  dtkmyeb18,dtkmyeb20,dtkmyeb19,dtkmyeb22,dtkmyeb21,dtkmyeb23 from (((dtkmyeb   a left join (s_e_l_e_c_t pzzb6,pzzb59 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb59 Is not null  And  cint(pzzb3) <= 1 group by pzzb6,pzzb59  Union All  s_e_l_e_c_t pzzb6,pzzb61 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb61 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb61  Union All  s_e_l_e_c_t pzzb6,pzzb63 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb63 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb63  Union All  s_e_l_e_c_t pzzb6,pzzb65 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb65 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb65  Union All  s_e_l_e_c_t pzzb6,pzzb67 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb67 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb67  Union All  s_e_l_e_c_t pzzb6,pzzb69 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb69 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb69  Union All  s_e_l_e_c_t pzzb6,pzzb71 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb71 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb71  Union All  s_e_l_e_c_t pzzb6,pzzb73 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb73 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb73  Union All  s_e_l_e_c_t pzzb6,pzzb75 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb75 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb75  Union All  s_e_l_e_c_t pzzb6,pzzb77 As pzzb100,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null and pzzb77 Is not null And cint(pzzb3) <= 1   group by pzzb6,pzzb77  ) b  on b.pzzb6 = a.dtkmyeb5 And b.pzzb100 = a.dtkmyeb28)  left join dtkm c on c.km7 = a.dtkmyeb5) left join (s_e_l_e_c_t pzzb6,sum(pzzb8) As pzzb8,sum(pzzb9) As pzzb9 from dtpzzb where pzzb142 Is not null And cint(pzzb3) <= 1  group by pzzb6) d  on d.pzzb6 = a.dtkmyeb5)  left join (s_e_l_e_c_t pzzb12 ,sum(pzzb8) as pzzb8,sum(pzzb9) as pzzb9 from dtpzzb where pzzb142 is not null and  cint(pzzb3) <= 1  group by pzzb12) h  on h.pzzb12 = a.dtkmyeb26


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


加好友 发短信
等级:超级版主 帖子:107846 积分:548581 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/1/14 14:34:00 [只看该作者]

我看的是一脸懵,没有办法提供什么建议

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


加好友 发短信
等级:狐神 帖子:5055 积分:13047 威望:0 精华:0 注册:2014/5/15 21:34:00
  发帖心情 Post By:2022/1/14 15:23:00 [只看该作者]

这个意思:
比如:企业提供的SQL数据库备份,还原后,后台数据库大部分是3NF范式,这样必然要多表连接查询,那么查询效率哪种方法高?
销售表中的产品列,价格列,负责人列,员工列,购买方等列信息都是单表存储的。那么
1、直接用SQL的连接查询语句,查询出销售表
2、分别读取各表,用语句更新写入
以上两种方法哪个快?
    我的感觉应该是第一种快,为何测试时,有的是第二种快? 
是否是笛卡尔乘积的原因?还是其他什么原因?

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


加好友 发短信
等级:狐神 帖子:5055 积分:13047 威望:0 精华:0 注册:2014/5/15 21:34:00
  发帖心情 Post By:2022/1/14 15:56:00 [只看该作者]

比如:有的特大型企业,一个月的凭证量,就有10万多份,而凭证表的关联表有10多个,有的表几千行,甚至上万行。必须分月加载,才能得到数据。
目前我们用的软件,都非常的慢,有的都废弃了。如果狐表能在此方面有个飞跃,那就厉害了。

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


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

数据达到一定的量,需要算法和硬件的支持,不是foxtable能够解决的问题了

 回到顶部