62,620
社区成员
发帖
与我相关
我的任务
分享public List<Emp> findAll(String keyWord, int currentPage, int lineSize)throws Exception {
List<Emp> all = new ArrayList<Emp>();
String sql = "select top "+ lineSize +" e.empno,e.ename,e.job,e.hiredate,e.sal,e.comm,m.empno mno,m.ename mna" +
"from emp e LEFT OUTER JOIN emp m" +
" ON e.mgr = m.empno" +
"where (e.empno LIKE ? OR e.ename LIKE ? OR e.job LIKE ? OR CAST(e.hiredate AS datetime) LIKE ? OR " +
"e.sal LIKE ? OR e.comm LIKE ? )"+
"AND e.empno not in (select top " + (currentPage - 1) * lineSize + " empno from emp) ";
pstmt = conn.prepareStatement(sql);
pstmt.setString(1,"%"+keyWord+"%") ;
pstmt.setString(2,"%"+keyWord+"%") ;
pstmt.setString(3,"%"+keyWord+"%") ;
pstmt.setString(4,"%"+keyWord+"%") ;
pstmt.setString(5,"%"+keyWord+"%") ;
pstmt.setString(6,"%"+keyWord+"%") ;
ResultSet re = this.pstmt.executeQuery();
while(re.next()){
Emp emp = new Emp();
emp.setEmpno(re.getInt(1));
emp.setEname(re.getString(2));
emp.setJob(re.getString(3));
emp.setHiredate(re.getDate(4));
emp.setSal(re.getDouble(5));
emp.setComm(re.getDouble(6));
Emp mgr = new Emp();
mgr.setEmpno(re.getInt(7));
mgr.setEname(re.getString(8));
emp.setMgr(mgr);
all.add(emp);
}
return all;
}
select top 3 e.empno,e.ename,e.job,e.hiredate,e.sal,e.comm,m.empno mno,m.ename mna
from emp e LEFT OUTER JOIN emp m
ON e.mgr = m.empno
where (e.empno LIKE '%%' OR e.ename LIKE '%%' OR e.job LIKE '%%' OR CAST(e.hiredate AS datetime) LIKE '%%' OR
e.sal LIKE '%%' OR e.comm LIKE '%%' )
AND e.empno not in (select top 0 empno from emp)