| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 2921 人关注过本帖
标题:请教vfp中select命令一个问题
只看楼主 加入收藏
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
问题2
如果在vfp6下:
bmk0651表中加大tot1字段的宽度

坚守VFP最后的阵地
2015-03-25 12:16
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
以下是引用sdta在2015-3-25 12:01:42的发言:

问题1
在VFP9下:
SELECT xm,tot1 FROM bmk0651 WHERE INLIST(xm,'叶镔','景淼钦','陈晶佳') ;
UNION select '合计',SUM(tot1)  FROM bmk0651 WHERE INLIST(xm,'叶镔','景淼钦','陈晶佳')
改为
SELECT xm,tot1 FROM bmk0651 WHERE INLIST(xm,'叶镔','景淼钦','陈晶佳') into cursor temp readwrite
insert into temp select '合计',SUM(tot1)  FROM bmk0651 WHERE INLIST(xm,'叶镔','景淼钦','陈晶佳')
只要在UNION 后面加上all,这样合计在最后面,更好了[attach]79557[/attach]。我也不知道是啥原因。
见右图:
合计的结果在VFP9下可以,但在VFP6下不能显示6075,而是三个***?

要修改原表中tot1字段长度是一个不明智的方法,用inlist()原来为了少打or ,wgere xm='...'.or.xm='****'.or.xm=':::'
图片附件: 游客没有浏览图片的权限,请 登录注册


[ 本帖最后由 sylknb 于 2015-3-25 12:53 编辑 ]
2015-03-25 12:47
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
重新建一个临时表(create cursor),设置字段宽度

坚守VFP最后的阵地
2015-03-25 12:52
sylknb
Rank: 4
等 级:贵宾
威 望:14
帖 子:1547
专家分:184
注 册:2006-6-3
收藏
得分:0 
当然后办法有,但与意原不附,用inlist()原来为了少打or ,wgere xm='...'.or.xm='****'.or.xm=':::'
2015-03-25 12:54
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:335
帖 子:9841
专家分:27213
注 册:2012-2-5
收藏
得分:0 
在UNION 后面加上all,这样合计在最后面

汉化帮助文件中没有说明,SQL命令的运行机制让人摸不着头脑。TONYDENG说的有道理,尽量不用SQL命令。

坚守VFP最后的阵地
2015-03-25 12:57
快速回复:请教vfp中select命令一个问题
数据加载中...
 
   



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

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