| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1197 人关注过本帖, 1 人收藏
标题:求一个合并数据的命令
只看楼主 加入收藏
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用liuxingang28在2014-4-13 12:44:08的发言:

update a表 set yy = b表.yy from b表 where a表.xh = b表.xh
这行代码在VFP6下不能运行是正常的,在VFP9下运行正常

坚守VFP最后的阵地
2014-05-19 10:53
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
以下是引用taifu945在2014-4-13 14:25:03的发言:

4楼是9.0的正解版本,如果楼主用6.0,可以试试:
UPDATE A表 SET YY=(SELECT YY FROM B表 WHERE B表.XH=A表.XH)
这行代码在VFP6下也不能正常运行,只能在VFP9下正常运行(VFP7/VFP8没试过)

坚守VFP最后的阵地
2014-05-19 10:57
wangzhiyi
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:366
专家分:684
注 册:2014-4-9
收藏
得分:0 
VFP6代码:use a表 in 1
use B表 IN 2
SELE 2
INDE ON XH TO XH1
SELE 1
SET RELA TO ALLT(XH) INTO B
REPL ALL YY WITH B.YY
2014-05-19 15:06
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:379
专家分:820
注 册:2013-4-18
收藏
得分:0 
我用了这样一句话更新2500条数据速度很慢是什么原因
update a set a.省市=b.省市 from b where left(a.身份证号,6)=b.身份证
2014-05-20 08:30
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
回复 14 楼 dzy123
应该不慢才对
2014-05-20 08:46
liuxingang28
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:山东济南
等 级:贵宾
威 望:47
帖 子:658
专家分:2180
注 册:2014-2-7
收藏
得分:0 
回复 14 楼 dzy123
你所说的“很慢”是多长时间?一般来说,更新2500条记录最多也就几秒钟。不过,影响速度的原因很多,计算机的硬件、数据量的大小、是否对 where 条件中的字段建立了索引等等,都会对运行速度产生影响。又没有源数据,仅靠笼统的一句“很慢”,是无法获得任何帮助的。

泉城飞狐
2014-05-20 08:51
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
测试了下 用时0.00秒

[ 本帖最后由 tlliqi 于 2014-5-20 09:49 编辑 ]
2014-05-20 09:26
dzy123
Rank: 8Rank: 8
等 级:蝙蝠侠
威 望:5
帖 子:379
专家分:820
注 册:2013-4-18
收藏
得分:0 
我现在不在数据机器那儿,我马上上传数据库表大家帮忙看下
2014-05-20 11:14
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
程序代码:
CREATE TABLE a2 (省市 c(10),身份证号 c(18))
FOR i=1 TO 2500
APPEND BLANK
REPLACE 省市 WITH [省市]+ALLTRIM(STR(i)),身份证号 WITH [12345678901234]+PADL(ALLTRIM(STR(i)),4,[0])
endf
SELECT [          ] 省市,身份证号 FROM a2 INTO dbf a1
update a1 set a1.省市=a2.省市 from a2 where a1.身份证号=a2.身份证号  
用时0.02秒
2014-05-20 11:53
快速回复:求一个合并数据的命令
数据加载中...
 
   



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

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