在机房收费系统中,组合查询是非常重要的一部分,很多人刚开始接触的时候都感到无从下手。其实,如果静下心来仔细分析一下,组合查询也是不难的。下面,我们来慢慢分析一下。
首先,我们先从界面入手:
从界面上我们可知,这个组合查询分为三组查询条件,两个组合关系。
功能:
a. 只选择第一组查询条件,不选择组合关系——可以执行查询。 如:卡号<>1
b. 选择第一个组合关系(”与“ ”或“)选择第二组查询条件——可以进行查询 如:卡号<>1 与 学号<>2
c. 选择第二个组合关系,选择第三组查询条件——可以进行查询 如:卡号<>1 与 学号<>2 或 性别=男
思路理清了,接下里我们要做的就是把这些查询条件拼凑出来就好了。
a. combobox框中的可选项是”卡号“ ”学号“ ”姓名“ ”性别“等,而它们对应的数据库中的字段是 ”cardno“ “studentno” “studentname”
所以,首先我们要做的就是写一个函数,把这些可选项与数据库中的字段对应起来。
函数如下:
b. 组合关系中的可选项是”与“ ”或“ 我们要对应成”and“ ”or“
函数如下:
c. 准备工作完毕,这样就该写查询的程序了。
程序如下:
仅选择了第一组查询条件,没有选组合关系。
选择了第一个组合关系,前两组查询条件。
选择了三个查询条件,两个组合关系。
最后只执行一次查询。
这段代码的思路就是把查询条件拼凑出来,根据用户的选择组成不同的查询条件,最后只执行一次查询。