본문 바로가기

전체 글

Join으로 가져온 데이터들을 테이블에 뿌리기 다음과 같이 subject 테이블과 attend 테이블을 조인해서 데이터를 가져온다 (rownum은 페이징 처리를 위해서 사용. dao의 sql문 안에서는 ? 로 대체하고 인자값으로 endRow와 startRow가 들어감) 1 2 3 4 5 6 7 8 9 select * from (select aa.*, rownum rn from (select a.subno, a.subname, a.teachername, s.cnt, count(a.subno) currentCnt, a.status from attend a join subject s on s.subno = a.subno where stuno = 'USER1' group by a.subno, a.subname, a.teachername, s.cnt, a.s.. 더보기
수강편람 테이블에서 과목별 현재 수강인원도 함께 출력하기 내가 보여주고 싶은 결과값 위와 같이 수강편람 테이블이 있다. 맨 우측 열에서 알 수 있듯이 나는 현재 수강인원도 출력하고 싶다. 그러나 과목코드, 강의명, 교사명, 정원은 subject 테이블에 있고, 현재 수강인원은 select count(*)를 해서 attend 테이블에서 가져와야한다. 1. 비조인 select / left outer join 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 --내가 보여주고 싶은 결과값: 수강편람(subject) 테이블에서 과목별 현재 수강인원 컬럼(attend 테이블을 이용)도 함께 출력하기 --결국 attend 테이블에서 subno별 count를 구한 컬럼이 붙어있도록 하는 것. (조인/비조인 방법) --1. 비조인 select --데이터가 많은.. 더보기
스프링부트 JPA+jsp(jstl) 페이징 처리 Pageable 이렇게 간단한 거였는데 하루종일 삽질했다.. 1. 이전, 다음 말고 페이지 블록 (1 2 3, 4 5 6)으로 나타내고 싶다. 2. 타임리프 말고 jsp에서 jstl로 구현해야한다. 3. Mapper가 아닌 JPA Repository를 사용해야 한다. 4. 검색결과를 반영해서 페이징을 처리하고 싶다. Controller @GetMapping("/admin/userlist") public String userList(Model model, @PageableDefault(size = 10, sort = "id", direction = Sort.Direction.DESC) Pageable pageable, @RequestParam(required = false, defaultValue = "") String .. 더보기