Office中国论坛/Access中国论坛

标题: 【Access小品】用查询建立考号示例 [打印本页]

作者: todaynew    时间: 2011-9-30 12:37
标题: 【Access小品】用查询建立考号示例
  版友xuexi同志问根据考分将考生分配到各考场并编考号的问题,这个问题的解法很多。本示例采取的是查询方式解题,由此例主要想讲讲三个函数(IIF、Choose、Switch)的使用问题。


  IIF函数较易掌握,也被版友广泛使用。但这个函数有一个缺陷,就是套用时括号很多,可读性不强。因此在判断情况不多时,使用它还是可以的,判断情况多的时候就应该改为使用Choose或Switch函数为佳。


  Choose函数的使用有特定的条件,它要求判断的条件为一组自然数,符合这种情况可以用此函数。比如,某表中有一个字段存有记录1、2、3、4、5、6、7,在查询中我们希望将这组阿拉伯数字,转化为“一班”、“二班”...“七班”,这种情形用Choose最简单。Choose用来将阿拉伯数字转为中文大写也很简洁。


  Switch函数较之Choose更广泛,它采用的是一个判断对应一个结果的方式呈现数据。在判断表达式比较复杂的情况下,用这个函数解决问题很方便。本例中便是采用了这个函数进行运算。


  由此三个函数,进一步想说说语句结构的问题。IF ... else ... end if结构类似于IIF函数,一旦嵌套多了,就眼花缭乱,云山雾罩,丈二和尚摸不着头脑。所以在语句结构中,对复杂的分支结构宜采用select case ...end select结构,这个结构类似于Choose、Switch函数。

[attach]46811[/attach]

[attach]46812[/attach]


作者: tzh16000    时间: 2011-9-30 12:48
学习下
SELECT CASE在多条件下比IF好,更简洁清晰,但是多层嵌套的情况也是一样复杂的
作者: roych    时间: 2011-9-30 15:01
噢。这个啊,好像昨晚在EH里见过,用ADO很容易实现。
作者: ycxchen    时间: 2011-9-30 15:14
又学一招!
作者: tmtony    时间: 2011-9-30 20:53
收藏!
作者: fnsmydyang    时间: 2011-9-30 22:36
学海无涯,谢谢...
作者: readysky    时间: 2011-10-1 02:24
受用,收藏,
作者: c101    时间: 2011-10-1 23:42
谢谢...
作者: yanghua1900363    时间: 2011-10-2 18:07
学习了
作者: fendou11    时间: 2011-11-18 23:15
受教了!
作者: lingjiang    时间: 2020-8-17 23:23
学海无涯,谢谢...




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3