| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2152 人关注过本帖
标题:求助:如何将一个 dbf 按某个字段分成多个 dbf
只看楼主 加入收藏
二马路刘光头
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2022-3-24
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:13 
求助:如何将一个 dbf 按某个字段分成多个 dbf
字段是文字,而不是数字,比如是学校名称。需要根据学校名称拆分成多个dbf,每个学校一个。想要一次性实现,而不是用copy to 一个一个生成。万分感谢啊!
搜索更多相关主题的帖子: 多个 dbf 名称 学校 字段 
2022-03-24 11:57
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
可以
2022-03-24 12:12
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:5 
为了能快速的解决问题,最好上传相关数据

坚守VFP最后的阵地
2022-03-24 12:20
mywisdom88
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:191
帖 子:3147
专家分:8408
注 册:2015-3-25
收藏
得分:0 
字段是文字,而不是数字,比如是学校名称。需要根据学校名称拆分成多个dbf
假设原表是 学生表(姓名,学号,学校)
select distinct 学校 from 学生表 into cursor 学校tmp
select 学校tmp
nm = ""
fn = ""
scan
 nm=allt(学校)
 fn = "d:\xxx\" + nm
 select * from 学生表 where allt(学校)=nm into table (fn)
endscan
这样就可以了,没测试。


[此贴子已经被作者于2022-3-24 17:28编辑过]

2022-03-24 12:33
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
SELECT DISTINCT 学校名称 FROM 学生表 INTO CURSOR XX
SCAN
    SELECT * FROM 学生表 WHERE ALLTRIM(学生名称) == ALLTRIM(XX.学生名称) INTO (TABLE ALLTRIM(学生名称))
ENDSCAN

坚守VFP最后的阵地
2022-03-24 16:12
gs2536785678
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:45
帖 子:610
专家分:1784
注 册:2017-7-16
收藏
得分:0 
各位朋友可能是误解了庄主的意思,庄主是想【一句话】
而不是用一个程序代码段解决。
2022-03-25 09:18
二马路刘光头
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2022-3-24
收藏
得分:0 
示例表格.zip (308 Bytes)
大哥们,我就是想要一个命令能根据xymc(学院名称)自动把这个表分成5个表,每个表里有该学院学生的数据,分出来的表格最好能直接以该学院名字命名,我是真的不懂,麻烦大哥们能一步一步告诉我操作,谢谢了。
2022-03-27 23:02
二马路刘光头
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2022-3-24
收藏
得分:0 
4、5楼大哥有空的话,麻烦再给解答一下哈
2022-03-27 23:03
schtg
Rank: 12Rank: 12Rank: 12
来 自:Usa
等 级:贵宾
威 望:67
帖 子:1712
专家分:3318
注 册:2012-2-29
收藏
得分:10 
回复 7楼 二马路刘光头
5楼已经给出了代码,稍加修改即可
程序代码:
set safety off
close all
select distinct xymc from 示例表格 into cursor xx
scan
    select * from 示例表格 where alltrim(xymc) == alltrim(xx.xymc) into table alltrim(xx.xymc)
endscan
close all
quit


用数组的方法,试一试,可否?
程序代码:
set safety off
close all
select distinct xymc from 示例表格 where len(alltrim(xymc))>0 into array xmc
nNum = ALen(xmc,0)
For i = 1 TO nNum
    select * from 示例表格 where alltrim(xymc)==alltrim(xmc(i)) into table (xmc(i))
endfor
close all
quit


[此贴子已经被作者于2022-3-28 06:01编辑过]

2022-03-28 05:55
laowan001
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:66
帖 子:1088
专家分:2682
注 册:2015-12-30
收藏
得分:0 
一个命令恐怕没法实现
2022-03-28 07:25
快速回复:求助:如何将一个 dbf 按某个字段分成多个 dbf
数据加载中...
 
   



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

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