| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1190 人关注过本帖
标题:各位大佬,什么方法最好,用时最少,盼赐教,谢谢。
只看楼主 加入收藏
凝聚双眼
Rank: 2
等 级:论坛游民
帖 子:36
专家分:32
注 册:2023-12-1
收藏
 问题点数:0 回复次数:41 
各位大佬,什么方法最好,用时最少,盼赐教,谢谢。
图片附件: 游客没有浏览图片的权限,请 登录注册



Create Cursor temp (F1 c(10),F2 c(10),F3 N(6,1))
For jj=1 To 999999
    Append Blank
Endfor

Replace All F1 With '序'+Padl(Alltrim(Str(Recno())),5,[00000])
Replace All F2 With [A]+Padl(Alltrim(Str(Recno())),5,[00000])
Replace All F3 With Recno()
*----------------------------------------------------*
t1=SECONDS()
*----------------------------------------------------*




[此贴子已经被作者于2023-12-1 12:15编辑过]

搜索更多相关主题的帖子: Replace Str With Blank 方法 
2023-12-01 12:13
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1089
专家分:2682
注 册:2015-12-30
收藏
得分:0 
把3句replace合并成一句还能快一点点
2023-12-13 10:43
easyppt
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:302
专家分:696
注 册:2021-11-24
收藏
得分:0 
估计要结合你的实际业务场景了,例子本身可优化的空间很小,速度来去不会很大,也可以 Update 操作:

update temp set F1 = '序'+Padl(Alltrim(Str(Recno())),5,[00000]),;
F2 = [A]+Padl(Alltrim(Str(Recno())),5,[00000]),;
F3 = Recno()


2023-12-13 11:22
sostemp
Rank: 4
等 级:贵宾
威 望:10
帖 子:202
专家分:284
注 册:2009-6-2
收藏
得分:0 
以下是引用easyppt在2023-12-13 11:22:18的发言:

估计要结合你的实际业务场景了,例子本身可优化的空间很小,速度来去不会很大,也可以 Update 操作:

update temp set F1 = '序'+Padl(Alltrim(Str(Recno())),5,[00000]),;
F2 = [A]+Padl(Alltrim(Str(Recno())),5,[00000]),;
F3 = Recno()


2楼、3楼的朋友,估计是理解错了。那应该只是楼主给的是测试数据代码而已。
楼主应该是求续写的后面的代码,动态分栏、分页。

[此贴子已经被作者于2023-12-13 13:05编辑过]

2023-12-13 13:04
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1730
专家分:3324
注 册:2012-2-29
收藏
得分:0 
分组吧?
2023-12-14 07:12
凝聚双眼
Rank: 2
等 级:论坛游民
帖 子:36
专家分:32
注 册:2023-12-1
收藏
得分:0 
回复 4楼 sostemp
是的。谢谢
2023-12-14 11:14
凝聚双眼
Rank: 2
等 级:论坛游民
帖 子:36
专家分:32
注 册:2023-12-1
收藏
得分:0 
回复 5楼 schtg
对,对给定数据表,实现动态分组与动态分页,谢谢。
每组最多50。
比如,有 65条,分2组,那么左组 33,右组 32,一页
如有 99条,分2组,那么左组50,右组 49,一页
如有 101条,分2组,第一页左 50,右50,第二页左1。
图片附件: 游客没有浏览图片的权限,请 登录注册


[此贴子已经被作者于2023-12-17 14:37编辑过]

2023-12-14 11:20
sych
Rank: 6Rank: 6
等 级:侠之大者
威 望:7
帖 子:317
专家分:448
注 册:2019-10-11
收藏
得分:0 
思路要转换,我们要的是实现目标,不是追求速度、高效(当然如果技术强悍,另当别论),别人一句实现的,我们分步能实现也区别不大
2023-12-14 12:57
凝聚双眼
Rank: 2
等 级:论坛游民
帖 子:36
专家分:32
注 册:2023-12-1
收藏
得分:0 
回复 8楼 sych

能否附上您的调用函数代码,学习您的思路,谢谢。
2023-12-14 13:52
凝聚双眼
Rank: 2
等 级:论坛游民
帖 子:36
专家分:32
注 册:2023-12-1
收藏
得分:0 
回复 2楼 laowan001
图片附件: 游客没有浏览图片的权限,请 登录注册

您误会了,我没讲清楚。
是对给定数据表,实现动态分组与动态分页,谢谢。
每组最多50。
组数不固定。
比如,有 65条,分2组,那么左组 33,右组 32,一页
如有 99条,分2组,那么左组50,右组 49,一页
如有 101条,分2组,第一页左 50,右50,第二页左1。

*===================================================================================
*作 用:对指定数据表分栏分组分页
*语 法:ColGroup_Convert(cTableMc,nNumber,cOutTableMc,nMaxColGroupRec)
*参数说明:cInTableMc 要转换的数据表,nNumber 分栏分组数,
*参数说明:cOutTableMc 分栏分组后的数据表,nMaxColGroupRec 每页每栏的最大记录数(默认为50)
*返 回 值:
*===================================================================================
Function ColGroup_Convert(cTableMc,nNumber,cOutTableMc,nMaxColGroupRec)  
    If Parameters()#4
        Messagebox('参数个数不对!',16,'错误')
        Return ''
    Endif
    If Vartype(cTableMc)#'C' Or Vartype(nNumber)#'N' Or Vartype(cOutTableMc)#'C' Or Vartype(nMaxColGroupRec)#'N'
        Messagebox('参数类型不对!',16,'错误')
        Return ''
    Endif
    Private All
    ....
    ....
    ....
    .....
Endfunc

[此贴子已经被作者于2023-12-17 14:38编辑过]

2023-12-14 15:15
快速回复:各位大佬,什么方法最好,用时最少,盼赐教,谢谢。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.055843 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved