我正在使用JSP和Servlet创建一个Web应用程序,我遇到了这个问题:
我有一个表users
和一个myeducations
表。这些表关系建立在user_id上。
这是表格:
myeducation
---------------------------------------------------------------------------------- | ed_id | user_id | school_name | year_attended_from | year_attended_to | degree | ----------------------------------------------------------------------------------
现在,我想在网站(jsp)上显示所有用户教育,但用户拥有的教育数量是随机的:1个用户只能完成1个学校,其他可以3个等等... < / p>
我理解如何只检索1行,SQL是:
SELECT school_name
FROM myeducation
INNER JOIN users ON users.user_id = myeducation.user_id;
但是如何使这个语句在循环中运行,以便我得到用户的所有教育,比如说他是否只有1个。然后将它们全部放在一个会话变量中并显示在一个jsp&#39; s div。
答案 0 :(得分:0)
您可以使用joins
或nested Query
根据您当前的数据库设计,您可以通过简单的查询本身实现此目的,因为教育表包含USER_ID
SELECT school_name FROM myeducation myedu where user_id="SOME_ID_HERE"
要在servlet中循环String Array,只需按照这样做
ArrayList<String> arr = new ArrayList<String>();
while (rs.next()) {
arr.add(rs.getString("school_name "));
}