access多条件查询问题

比如通过班级号和学号查询学生,输入班级号和和学号就能定位到某一个人。如果只输入班级号就现显示这个班级所有人。在一个窗体中用两个文本框实现。要怎么来实现... 比如通过班级号和学号查询学生,输入班级号和和学号就能定位到某一个人。如果只输入班级号就现显示这个班级所有人。在一个窗体中用两个文本框实现。要怎么来实现 展开
 我来答
tjrmgs
2013-11-06 · TA获得超过5765个赞
知道大有可为答主
回答量:2161
采纳率:94%
帮助的人:1024万
展开全部

select  * from 表名 where

(班级=Forms![窗体名]![班级文本框名] and 学号=Forms![窗体名]![学号文本框名]) or

(班级=Forms![窗体名]![班级文本框名] and Forms![窗体名]![学号文本框名] is Null)  

 

如要实现只输入一个文本框(两个中的任何一个)就查那一个筛选条件,两个都输入就同时查两个筛选条件,则代码可以这样写

select  * from 表名 where

(班级=Forms![窗体名]![班级文本框名] and 学号=Forms![窗体名]![学号文本框名]) or

(班级=Forms![窗体名]![班级文本框名] and Forms![窗体名]![学号文本框名] is Null) or

(Forms![窗体名]![班级文本框名] is Null and 学号=Forms![窗体名]![学号文本框名])

 

以上SQL代码写成多行形式,若要在VBA代码里运行则要写成一行。

 

送佛送到西吧!下面是ACCESS窗体实现多条件查询的具体实现方法:

 

新建一个窗体,取名“多条件查询”为窗体添加两个文本框,分别取名“班级”、“学号”,一个命令按钮“查询”。用向导添加一个子窗体显示查询结果,子窗体名为“Child1",将其数据源设置为下列SQL语句(这条语句要写成1行,见下图2)

 

SELECT * FROM 学生 WHERE (班级=Forms!多条件查询!班级 And 学号=Forms!多条件查询!学号) Or (班级=Forms!多条件查询!班级 And Forms!多条件查询!学号 Is Null) Or (Forms!多条件查询!班级 Is Null And 学号=Forms!多条件查询!学号);

 

添加“查询”按钮单击事件过程

Private Sub 查询_Click()

    Me!Child1.Requery

End Sub

 

现在,你要的效果来了。只输入班级,点击“查询”按钮看全班情况。输入两个条件,点击“查询”按钮只查看某学生。

 

窗体控件布局如图和运行效果

Hope_李
2013-11-06 · TA获得超过141个赞
知道小有建树答主
回答量:329
采纳率:33%
帮助的人:200万
展开全部
string whereStr = "classNo = "+班级号 ;
if(学号不为空)
{
whereStr+=" AND studentNo = "+学生号;
}
string sqlStr = "select * from tabename where "+ whereStr;
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式