永发信息网

access多条件查询问题

答案:2  悬赏:30  手机版
解决时间 2021-03-20 22:57
  • 提问者网友:疯孩纸
  • 2021-03-19 23:26
access多条件查询问题
最佳答案
  • 五星知识达人网友:持酒劝斜阳
  • 2021-03-20 00:44
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
 
现在,你要的效果来了。只输入班级,点击“查询”按钮看全班情况。输入两个条件,点击“查询”按钮只查看某学生。
 
窗体控件布局如图和运行效果



全部回答
  • 1楼网友:第幾種人
  • 2021-03-20 01:31
string whereStr = "classNo = "+班级号 ;
if(学号不为空)
{
whereStr+=" AND studentNo = "+学生号;
}
string sqlStr = "select * from tabename where "+ whereStr;
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯