标题:求助:and 和or怎么同时用
只看楼主
hjf1218
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2013-1-20
结帖率:78.57%
已结贴  问题点数:10 回复次数:9 
求助:and 和or怎么同时用
1、我有张学生成绩表,有等级科,例如,物理,化学等,等级分A,B,C,D,4种,因为有的是空数据,不能写例如!化学="D",要求是等级必要C以上(A,B,C),我这样写都是出错,求各位老师教我,刚学

例如我这样写老是出错 brow for 物理="A" or 物理="B" or物理="C" and 化学="A" or 化学="B" or 化学="C" and 生物="A" 生物="B" 生物="C"


2、另外我有个总分字段,想显示符合上面条件最低分的学生的总分和姓名,
我做了个表单,想在标签中显示符合上面条件的学生的总分和姓名,这个怎么写,刚学,别骂我

3、我想在一个标签中显示表的记录总数,我写这个命令为什么老出错,thisform.label3.Caption=reccount()
搜索更多相关主题的帖子: 化学 物理 成绩表 等级分 
2013-05-03 05:22
sdta
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:江苏省连云港市
等 级:版主
威 望:323
帖 子:9621
专家分:26174
注 册:2012-2-5
得分:2 
brow for (物理="A" or 物理="B" or物理="C") and (化学="A" or 化学="B" or 化学="C") and (生物="A" 生物="B" 生物="C")


坚守VFP最后的阵地
2013-05-03 07:02
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
得分:0 
1.brow for INLIST(物理,'A','B','C') and INLIST(化学,'A','B','C') AND INLIST(生物,'A','B','C')
2.查找最低总分(注:未考虑最低同分情况)
 DIMENSION A1(1,2) &&先定义数组,预防查询无记录出错
 A1[1,1]=''
 A1[1,2]=0
 SELECT 姓名,总分 FROM 成绩表 INTO ARRAY A1 ORDER BY 总分
 thisform.label1.Caption=A1[1,1]
 thisform.label2.Caption=TRANSFORM(A1[1,2])
 RELEASE A1
3.thisform.label3.Caption=TRANSFORM(reccount('成绩表'))


[ 本帖最后由 kiff 于 2013-5-3 08:10 编辑 ]
2013-05-03 07:08
hu9jj
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:红土地
等 级:贵宾
威 望:396
帖 子:11713
专家分:43267
注 册:2006-5-13
得分:2 
第三个问题还要注意工作区的问题,最好指定表别名。

活到老,学到老! http://www. E-mail:hu-jj@
2013-05-03 07:57
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
得分:2 
以下是引用hu9jj在2013-5-3 07:57:43的发言:

第三个问题还要注意工作区的问题,最好指定表别名。
2013-05-03 07:58
taifu945
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:80
帖 子:1545
专家分:3298
注 册:2012-7-6
得分:2 
回答楼主第三个问题:你第三个问题的根源在于没搞清Caption属性和RECCOUNT()函数的数据类型。前者是字符型的,后者是数值型的,你直接赋值当然不行。正确的做法是把数值型数据转换成字符型后再赋给Caption属性,比如:Thisform.Label3.Caption=STR(RECCOUNT(),2)。如果记录总数最高是3位数,则把STR()函数中的“2”改为“3”,依此类推。
2013-05-03 08:06
hjf1218
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2013-1-20
得分:0 
谢谢各位老师,明白,不过第二个问题,3楼写的,我没看明白,能解释下吗,
DIMENSION A1(1,2) &&先定义数组,预防查询无记录出错
A1[1,1]=''
A1[1,2]=0
SELECT 姓名,总分 FROM 成绩表 INTO ARRAY A1 ORDER BY 总分
这个定义数组,按总分排序,是不是排序后的第一个记录,自动读取到数组中,另外为什么已经读取到数据了,还要加RELEASE A1
这一句,这个有什么用
2013-05-03 09:05
tlliqi
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
等 级:贵宾
威 望:204
帖 子:15453
专家分:65956
注 册:2006-4-27
得分:2 
2、另外我有个总分字段,想显示符合上面条件最低分的学生的总分和姓名,
我做了个表单,想在标签中显示符合上面条件的学生的总分和姓名
gggggg
SELECT 姓名,总分 FROMWHERE 条件 INTO CURSOR cx
thisform.label1.Caption=ALLTRIM(姓名)
thisform.label2.Caption=ALLTRIM(str(总分))

2013-05-03 09:12
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
得分:0 
以下是引用hjf1218在2013-5-3 09:05:46的发言:

谢谢各位老师,明白,不过第二个问题,3楼写的,我没看明白,能解释下吗,
DIMENSION A1(1,2) &&先定义数组,预防查询无记录出错
A1[1,1]=''
A1[1,2]=0
SELECT 姓名,总分 FROM 成绩表 INTO ARRAY A1 ORDER BY 总分
这个定义数组,按总分排序,是不是排序后的第一个记录,自动读取到数组中,另外为什么已经读取到数据了,还要加RELEASE A1
这一句,这个有什么用
1、SELECT 姓名,总分 FROM 成绩表 INTO ARRAY A1 ORDER BY 总分
这是按总分自低分到高分排序,排序结果放在数组中,这样 A1[1,1] 就是最低分姓名,A1[1,2]就是最低分总分
2、RELEASE A1 是用完后删除这数组变量(释放内存),(这里可以不要这句也行)



2013-05-03 09:14
hjf1218
Rank: 1
等 级:新手上路
帖 子:56
专家分:0
注 册:2013-1-20
得分:0 
谢谢各位老师,辛苦了
2013-05-03 10:36



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-406106-1-1.html




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

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