| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 452 人关注过本帖
标题:求助!表间数据取值的问题
只看楼主 加入收藏
xxjjff029
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-30
结帖率:0
收藏
已结贴  问题点数:20 回复次数:9 
求助!表间数据取值的问题
正宗菜鸟一个,向各位求助。

A.dbf、B.dbf两个表在同一文件目录下,表结构相同,数据顺序相同,两个表的字段(如Rybh、Name等)都相同。字段Rybh的值具有唯一性。

求助:
A.dbf表字段Ltxj的新值=原Ltxj值 + B.dbf表字段Bfgz值÷9
A.dbf表字段Yfgz值=字段Ltxj+Jtbz+Wcbt+Sdbt之和

望大侠们出手相助,感激不尽!
2015-07-01 16:55
xxjjff029
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-30
收藏
得分:0 
可能是我讲得不清楚,但本人水平真的太有限啊
2015-07-01 17:21
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:7 
是这样吗?

程序代码:
clos tabl
use b
scan
upda a set a.Ltxj=a.Ltxj + B.Bfgz/9
upda a set Yfgz=Ltxj+Jtbz+Wcbt+Sdbt
ends
2015-07-01 17:54
欧阳mh
Rank: 2
等 级:论坛游民
威 望:3
帖 子:21
专家分:57
注 册:2015-6-10
收藏
得分:7 

close all
use b.dbf order Rybh
select 0
use a.dbf order Rybh
set relation on Rybh into b
replace a.Ltxj with a.Ltxj+b.Bfgz/9 all
replace a.Yfgz with a.Ltxj+a.Jtbz+a.Wcbt+a.Sdbt all
browse &&&&&&&&&&&&&&& 瞅瞅


2015-07-02 09:50
xxjjff029
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-30
收藏
得分:0 
谢谢tlliqi版主。
a.Ltxj原值是1299,B.Bfgz值是3150。
按理运行upda a set a.Ltxj=a.Ltxj + B.Bfgz/9这条命令时,a.Ltxj的新值应是1649,为什么会变成1330944.4?运行后其他所有记录都是这个状态。
另外,两个数据库里有3981条记录,Rybh是这两个数据库都有的字段,且具有唯一性,请问怎么通过对应Rybh(人员编号)进行更改?



谢谢欧阳mh,运行这个程序时,到set relation on Rybh into b这一步,提示有不能识别的短语或关键字。

多谢楼上二位,能不能继续帮我解答一下。
2015-07-02 10:20
欧阳mh
Rank: 2
等 级:论坛游民
威 望:3
帖 子:21
专家分:57
注 册:2015-6-10
收藏
得分:0 

set relation on Rybh into b
这句写错了
应该是
set relation to Rybh into b
2015-07-02 14:57
欧阳mh
Rank: 2
等 级:论坛游民
威 望:3
帖 子:21
专家分:57
注 册:2015-6-10
收藏
得分:0 


UPDATE只能用于SQL SERVER数据库,而且A表和B表都没建立关联,如何算得准?



2015-07-02 15:00
xxjjff029
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2015-6-30
收藏
得分:0 
多谢楼上两位,受益匪浅
2015-07-02 15:36
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:400
帖 子:11822
专家分:43421
注 册:2006-5-13
收藏
得分:7 
以下是引用欧阳mh在2015-7-2 15:00:11的发言:



UPDATE只能用于SQL SERVER数据库,而且A表和B表都没建立关联,如何算得准?

不全面,同样也可以用于DBF表的更新。

活到老,学到老!http://www.(该域名已经被ISP盗卖了)E-mail:hu-jj@
2015-07-03 06:13
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
收藏
得分:0 
以下是引用xxjjff029在2015-7-2 10:20:46的发言:

谢谢tlliqi版主。
a.Ltxj原值是1299,B.Bfgz值是3150。
按理运行upda a set a.Ltxj=a.Ltxj + B.Bfgz/9这条命令时,a.Ltxj的新值应是1649,为什么会变成1330944.4?运行后其他所有记录都是这个状态。
另外,两个数据库里有3981条记录,Rybh是这两个数据库都有的字段,且具有唯一性,请问怎么通过对应Rybh(人员编号)进行更改?
 
 
 
谢谢欧阳mh,运行这个程序时,到set relation on Rybh into b这一步,提示有不能识别的短语或关键字。
 
多谢楼上二位,能不能继续帮我解答一下。
1 会变成1330944.4?

2 怎么通过对应Rybh(人员编号)进行更改?
  upda upda a set a.Ltxj=a.Ltxj + B.Bfgz/9 where a.Rybh=b.Rybh

传上部分数据来看一下
2015-07-03 07:19
快速回复:求助!表间数据取值的问题
数据加载中...
 
   



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

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