| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 3624 人关注过本帖
标题:求助,select筛选条件中字段名为变量应该怎么写?
取消只看楼主 加入收藏
richer3456
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-18
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:3 
求助,select筛选条件中字段名为变量应该怎么写?
如题,比如我有一个表zk,表结构:
字段名:M1     M2    M3      M4
记录:  公司1  ab  15110101  123
        公司2  cd  15110105  854
        公司3  ab  15110108  546
        ......
第一步:我想做的是通过记录的内容找出相应字段名,这一步我已经实现,程序如下:
SET EXACT off
USE zk
GO top
cun=AFIELDS(zdm,"zk")
FOR i=1 TO cun
xz="zk."+zdm[i,1]
IF ALLTRIM(&xz.) = "151101"
EXIT
ENDIF
NEXT
运行上述代码没有问题,而且输入?zdm[i,1]可以得到相应字段名是M3

第二步:比如我想用select 查找上一步找出的字段内容为15110108的记录的所有信息,因为我上一步用循环得出的字段名相当于一个变量(zdm[i,1]),那么应该如何写select语句。
select * from zk where ????(条件部分该如何写?
本人新手,还望高人指点

[此贴子已经被作者于2017-8-18 17:14编辑过]

搜索更多相关主题的帖子: select 条件 字段 变量 记录 
2017-08-18 15:46
richer3456
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-18
收藏
得分:0 
回复 2楼 sdta
感觉不对,我试了一下,如果输入?EVALUATE(zdm[i,1]),取出来的结果是对应字段的第一条记录,并不是字段名。
然后我试了一下select * from zk where evaluate(zdm[i,1])="15110108" INTO dbf jg   没有查出来,是空表。
不过还是学习了evaluate()这个函数,还是有收获,谢谢!
2017-08-18 17:30
richer3456
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-18
收藏
得分:0 
回复 6楼 taifu945
我用的是vf9.0 用宏代换可以解决问题,非常感谢!
2017-08-21 10:28
richer3456
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-8-18
收藏
得分:0 
回复 5楼 sdta
可能是我版本的问题,我的是vf9.0,我用evaluate()这个函数就是查不出来,下载一个6.0版本试一下。非常感谢
2017-08-21 10:37
快速回复:求助,select筛选条件中字段名为变量应该怎么写?
数据加载中...
 
   



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

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