Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

ACCESS里多条件判断用什么函数?

子煜  发表于:2010-10-08 17:11:00  
复制

比如EXCEL里的一个公式如下:

=if(or(and(类别="大型",宽<=76),and(类别="小型",宽<200),and(类别="小型",面积<60000)),"差","好")

 

解释: 如果类别等于大型并且宽小于等于76返回差,如果类别等于小型并且宽小于200也返回差,如果类别等于小型面积并且小于60000返回差,否则全部返回好。

 

ACCESS里如何写?

 

Top
子煜 发表于:2010-10-08 17:26:48

这样为什么显示错误,哪里有错?

 

IIf(([类别]="大型" And [宽]<=76),"差",IIf(([类别]="小型" And [宽]<200),"差",IIf(([类别]="小型" And [面积]<60000),"差","好")))



一梦四年 发表于:2010-10-08 17:29:44
直接用if……else if ……

子煜 发表于:2010-10-08 21:30:17

我是在SQL里面啊?



符鸿敏 发表于:2010-10-08 22:55:00

试试:

=iif((类别="大型",宽<=76)or(类别="小型",宽<200)or(类别="小型",面积<60000),"差","好")

 

 



符鸿敏 发表于:2010-10-08 22:59:22

也可试试:

IIf([类别]="大型" And [宽]<=76 or [类别]="小型" And [宽]<200 or [类别]="小型" And [面积]<60000,"差","好")



子煜 发表于:2010-10-09 08:24:56
楼上的,你这个方法我都有试过,返回值还是错误。

wang decheng 发表于:2010-10-09 13:48:11
IIf([类型]="大型" And [宽]<=76,"差",IIf([类型]="小型" And [面积]<60000,"差",IIf([类型]="小型" And [宽]<200,"差","好"))) AS 评价

子煜 发表于:2010-10-10 01:47:53
wang decheng 你好,你的方法我也试过,返回错误,也不行的。

蒋元根 发表于:2010-10-10 11:29:24

供参考:

 

SELECT 表1.编号, 表1.类型, 表1.面积, 表1.宽, IIf((([类型]="大型" And [宽]<=76) Or ([类型]="小型" And [宽]<200) Or ([类型]="小型" And [面积]<60000)),"差","好") AS 表达式1
FROM 表1;

点击下载此附件

子煜 发表于:2010-10-11 11:06:49
谢谢,已解决,之前因数据类型错误导致。

181113 发表于:2010-10-13 14:45:33


总记录:11篇  页次:1/1 9 1 :