社区
VFP
帖子详情
同样的命令VFP6能用,VFP9不能用,如何解决
yun_c_sdn
2011-03-12 11:31:12
要求:取A表中所有字段,条件为按a字段进行分类汇总
语句: select * from A group by a into dbf b
这个语句VFP6可以顺利执行且取出的数据正确,VFP9无法执行,报错“sql:group by 子句缺少或无效。”
...全文
415
9
打赏
收藏
同样的命令VFP6能用,VFP9不能用,如何解决
要求:取A表中所有字段,条件为按a字段进行分类汇总 语句: select * from A group by a into dbf b 这个语句VFP6可以顺利执行且取出的数据正确,VFP9无法执行,报错“sql:group by 子句缺少或无效。”
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Ilikefox
2011-03-14
打赏
举报
回复
要求:取A表中所有字段,条件为按a字段进行分类汇总
语句: select * from A group by a into dbf b
首先,上面语句完全没有分类汇总的意义,因为没有任何聚合函数或计算表达式出现;要求也是含糊不清,汇总什么?求和还是平均还是统计还是其它?
6.0的group by本身就是个有毛病的东西,它对无意义的分类汇总也照样执行,当然结果也是无意义的结果。因此9.0才改进了,变得更加符合SQL标准。
举个例子,简单的成绩表(成绩表.dbf)
学号 姓名 性别 成绩
001 张三 男 89
002 李四 男 90
003 王五 女 90
004 赵六 男 87
005 吴七 女 93
按性别分类汇总,看看男女生平均成绩如何
SELECT 性别,AVG(成绩) as 平均成绩 FROM 成绩表 GROUP BY 性别
得到
性别 平均成绩
男 88
女 91
很好,这个要求以及对应的命令6.0和9.0都正确
再来
SELECT * FROM 成绩表 GROUP BY 性别
这个命令有意义吗?6.0得到
学号 姓名 性别 成绩
004 赵六 男 87
005 吴七 女 93
上面结果有汇总的意义吗?按性别分类仅有“男”、“女”两类,结果中每一类得到一条记录,而命令又要其它字段也有,6.0干脆把每一类的最后那个记录的数据填充进去,于是得到上面的结果。
9.0就不错,这个命令拒绝执行了,呵呵。
当然考虑到向下兼容,提供一个Set Enginebehavior 70命令,让9.0长叹一声:"TMD,还是按老版本的方式来处理"。
wwwwb
2011-03-14
打赏
举报
回复
最好使用标准的SQL语句
Set Enginebehavior 70
jxjdzwang5555
2011-03-14
打赏
举报
回复
分组是作什么用?如果是取全部字段,就不需要分组。
select * from A into dbf b 或者
select (将字段一一列出看能否正常运行) from A group by a into dbf b
狂龙骄子
2011-03-13
打赏
举报
回复
[Quote=引用 5 楼 darkhawlk 的回复:]好像后面用GROUP BY时,前面SELECT子句不可以用*,只能显示分组的列和相应统计信息。...[/Quote]
正解!
十月鹰飞
2011-03-12
打赏
举报
回复
好像后面用GROUP BY时,前面SELECT子句不可以用*,只能显示分组的列和相应统计信息。这一点是VFP9新加的限制。可能是保证数据的一致性吧。换成select a,count(*) sum(a) from d.dbf group by a
xilaianzxsc
2011-03-12
打赏
举报
回复
select * from 表名
order
by 表名.字段名 into table 目标表名
将楼主的group 改成 order
xilaianzxsc
2011-03-12
打赏
举报
回复
select * from 表名 order by 表名.字段名 into table 目标表名
xilaianzxsc
2011-03-12
打赏
举报
回复
from
A
group by
a
这二个a,
会不会出错?
taohua300
2011-03-12
打赏
举报
回复
执行这条语句前,先运行
Set Enginebehavior 70
或
sys(3099,70)
VFP6
种获取硬盘ID的方法
他们可能会使用VFP的内置
命令
和函数,结合一些系统变量,通过某种方式解析硬盘信息来获取硬盘ID。这种方法需要更多的编程技巧和对VFP系统的理解。 5. **用hardserial.dll**: hardserial.dll可能是一个专门用于获取...
VFP保存
命令
代码
### VFP保存
命令
代码知识点详解 #### 一、概述 VFP(Visual FoxPro)是一种关系型数据库管理系统,被广泛应用于开发桌面应用程序。在VFP中,保存数据是一项基本而重要的功能。本文将详细介绍一段VFP中的保存
命令
...
VFP控制EXCRL
命令
大全
VFP(Visual FoxPro)是一款曾经广泛使用的数据库开发系统,而EXCEL是Microsoft Office套件中的电子表格应用程序。"VFP控制EXCEL
命令
大全"是一个关于如何在VFP中操作和控制EXCEL的资源集合,这通常涉及到数据的导入...
vfp socket 应用示例
-
同样
使用`SOCKET()`函数,但这次需要指定监听的端口。 - `LISTEN`
命令
启动监听服务。 - 当有客户端连接时,`ACCEPT`
命令
接受连接并返回一个新的Socket句柄。 - 使用新句柄处理客户端的请求,如`SEND`和`...
常用 的VFP
命令
很好的
- **说明:** 此模式下只能查看数据,
不能
编辑。 ### 11. REPLACE **功能:** 替换一个或多个字段的值。 **语法:** ``` REPLACE [范围] <字段1> WITH <表达式1> [,<字段2> WITH <表达式2>] [FOR <条件>] [WHILE ...
VFP
2,748
社区成员
29,138
社区内容
发帖
与我相关
我的任务
VFP
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
复制链接
扫一扫
分享
社区描述
VFP,是Microsoft公司推出的数据库开发软件,用它来开发数据库,既简单又方便。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章