Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在jsp页面中复制,_Java_Sql_Jsp - Fatal编程技术网

Java 在jsp页面中复制,

Java 在jsp页面中复制,,java,sql,jsp,Java,Sql,Jsp,我用jsp编程的摘要页面面临重复问题 我有三个赞助者,每个人都管理自己的学校 当我尝试对所有重要数据执行select语句,并设置一个条件,其中学校等于赞助商的学校id时,它会将所有数据复制三次 这是复制结果的图像 以下是我的sql语句: <sql:query dataSource="${snapshot}" var="result"> SELECT distinct * from Math.Students

我用jsp编程的摘要页面面临重复问题

我有三个赞助者,每个人都管理自己的学校

当我尝试对所有重要数据执行select语句,并设置一个条件,其中学校等于赞助商的学校id时,它会将所有数据复制三次

这是复制结果的图像

以下是我的sql语句:

          <sql:query dataSource="${snapshot}" var="result">
                SELECT distinct * from Math.Students
                INNER JOIN MATH.Schools
                ON MATH.Students.Schools_idSchools = <%=session.getAttribute("SPONSOR_SchoolID")%>
                INNER JOIN MATH.Sponsor
                ON MATH.Schools.idSchools = MATH.Sponsor.Schools_idSchools
                INNER JOIN MATH.EventPArticipants 
                ON MATH.Students.idStudents = MATH.EventParticipants.Students_idStudents
                INNER JOIN MATH.Events
                ON MATH.EventParticipants.Events_idEvents = MATH.Events.idEvents

              </sql:query>
我是否可以避免重复部分

首先

select distinct *
在不止一张桌子上吃饭是愚蠢的。您不仅要获得两次连接字段,而且选择唯一标识符可以保证获得每一行

其次,

你加入的领域不是来自学生的领域,而是来自学校的领域。这现在成为一个完整的外部联接,而不是内部联接


这两点将改善您的结果。

它仍然会打印结果3次,为每个循环发布jstl,并向我们展示如何打印结果
from Math.Students
INNER JOIN MATH.Schools
ON MATH.Students.Schools_idSchools = <%=session.getAttribute("SPONSOR_SchoolID")%>
INNER JOIN MATH.Sponsor