根据用户界面的搜索条件查询以从多个表中选择记录

时间:2018-10-14 15:38:15

标签: sql

我正在尝试基于UI的搜索条件显示结果。在三个表中进行搜索,这些表如下...

Student Table

Subjects Table

Arrears Table

用户界面中的搜索条件是“名称”,“欠款数”,“或/”和“条件”中的“欠款主题”。当有人输入J的名字并单击搜索时,它将显示学生ID 1和3。如果搜索条件是吉尔和英语,则应显示所有三个欠款科目(代数,英语和数学),而不是仅显示英语... < / p>

请在下面找到我的查询:

select s.studentId
      ,s.FirstName
      ,s.LastName
      ,s.Department
      ,d.majorSubject
      ,a.Arrearsubject
from Student s, Department d, Arrear a
where ((:firstName is NULL OR upper (s.firstName) like upper(:firstName)||'%')
      or (:lastName is NULL OR upper (s.lastName) like upper(:lastName)||'%') and (:arrearSubject is NULL OR a.arrearID :=arrearSubject) 
and s.studentID = a.studentID and s.studentID = d.studentID;

当从用户界面将arrearSubject传递到数据库时,我将获取相关的欠款ID并根据该ID进行搜索。在上面的查询中,arrearSubject是用户看到并输入的内容,要查询的值只是其ID。

表/查询位于大型机/ DB2中。我更喜欢UI / UX / Java / J2EE。如果查询中有任何错误或我的问题很基本,请您道歉。

0 个答案:

没有答案