| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 984 人关注过本帖
标题:卡壳了,想不出来问题再哪里
只看楼主 加入收藏
dhy793202
Rank: 1
等 级:新手上路
帖 子:29
专家分:4
注 册:2013-3-17
结帖率:75%
收藏
已结贴  问题点数:20 回复次数:15 
卡壳了,想不出来问题再哪里
现在我有两个库A、B,
现在要显示A库某字段(字段A)包含B库某字段(字段B)的数据
比如A库
字段A
A123
A155
A233
C333
D654
......
B库
字段B
A1
B2
C3
......

现在要显示A库中包含B库字段的数据

我用的BROWSE LAST FOR ALLTRIM(B.字段B)$ALLTRIM(A.字段A)
但是显示出来数据为空,不知道问题出在哪里了
另外数据库名中带“-”会提示错误?
搜索更多相关主题的帖子: 数据库 
2013-06-07 12:07
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
这条指令不能实现你的目的

授人以渔,不授人以鱼。
2013-06-07 12:18
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
其实你上次的问题琢磨通了没有?

授人以渔,不授人以鱼。
2013-06-07 12:36
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:5 
两个数据表要关联
数据表名称的命名原则你还没掌握

坚守VFP最后的阵地
2013-06-07 12:54
dhy793202
Rank: 1
等 级:新手上路
帖 子:29
专家分:4
注 册:2013-3-17
收藏
得分:0 
回复 3楼 TonyDeng
上次ALINES那个么?
找了半天资料,才找到关于ALINES,花了一天时间学习了下数组才弄通,我上次下的这个版面下的“FoxPro入门手册”只有一些好像较多的命令和函数都没有提及到,有没有较为全面的资料参考,或者有个步骤,我现在是赶着鸭子上架,碰到什么问题书上找不到就到论坛求教了。
2013-06-07 13:07
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
想想我上次怎么回你的吧,有人给你代码就是害你,你都伸手拿去了,再指点也是没用,继续让人给代码呗,总有人给的。

授人以渔,不授人以鱼。
2013-06-07 13:11
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
收藏
得分:5 
以下是引用TonyDeng在2013-6-7 13:11:14的发言:

想想我上次怎么回你的吧,有人给你代码就是害你,你都伸手拿去了,再指点也是没用,继续让人给代码呗,总有人给的。
我本来想给的,但你这么一说,哈哈,我就不给了。不过,好人做一个,给个思路:B表在与A表共有的字段上做个索引,然后在A表区用SET RELATION TO命令关联B表,注意是一对一关联,还是一对多。若是后者,还要加一句SET SKIP ... ,最后,BROWSE FIELDS A.xx,B.xx。
2013-06-07 13:44
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:0 
他没学到那么复杂,但这个问题不关联、不索引也是可以的——比如实际要求不能打乱原始顺序的话——关键是手工怎么实现的,代码就怎么写,做得到这点,才能应付千变万化的需求,靠流水线高级指令写程序,只能出大路工业货。这个题目,包括上次那个,都可以完全不用那些高级的、罕见的函数,用最基本的东西就可以完成,本来很好的练习,不肯做就没办法。喂吧。

授人以渔,不授人以鱼。
2013-06-07 13:49
TonyDeng
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:304
帖 子:25859
专家分:48889
注 册:2011-6-22
收藏
得分:5 
思路:对B表循环,检查B表中每条记录的B字段是否在A表所有记录的A字段中出现(即再对A表循环,双循环),符合条件就捡出来——做临时表也好、写入数组也好、生成报表也好,都一样——如果A表很大,要加快速度,可以找到一条记录就标记一条,下次跳过,这样内层循环的次数就会不断减少。所有关联式的查询,也一样是用双循环构造庞大的内存临时表进行筛选,不要看到双重循环就觉得很复杂,那些一次性指令内部也用了双重循环,甚至有更多更复杂的判断机制,只不过隐藏了你看不到而已。你自己不学会这种最基本的手法,当一次性指令不能满足需求时,自己也无法完成,等于零,编程不是这样学的。

[ 本帖最后由 TonyDeng 于 2013-6-7 14:02 编辑 ]

授人以渔,不授人以鱼。
2013-06-07 13:58
dhy793202
Rank: 1
等 级:新手上路
帖 子:29
专家分:4
注 册:2013-3-17
收藏
得分:0 
回复 4楼 sdta
刚发现确实是关联问题,不关联只能按B表的第一条检索出来结果
通过SELECT * FROM A JOIN B ON B.字段B$A.字段A  可以得到结果么?
不过我的A库很大,这样弄会不会较占资源?
2013-06-07 13:59
快速回复:卡壳了,想不出来问题再哪里
数据加载中...
 
   



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

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