Backend/JAVA

한 테이블에서 여러가지의 그룹함수의 결과를

응애개발자 애기 2021. 10. 22. 22:34
728x90
반응형
<select id="readProductCount" resultType="com.moolcalm.domain.ProductVO">
  	select  count(*) count, sum(p_price) sum,p_price price from product_list where p_setname=#{p_setname};
  </select>

사실 처음에 요런 식으로 sql문을 짜 놨었는데 ... 

 

jsp 파일에 어떤 식으로 넣어야하는지 감이 안왔었다. 여러개의 값을 각각의 칸에 넣어줘야 하는 문제였다...

한 컬럼이라서 리스트에 넣을 필요가 없는데 내가 여러개라고 착각을 하고 있었던 것이다. ....

그래서 처음에는 List에 넣으려고 했다 ;;; 

 

근데 ${readProductCount[0]}이런식으로 하니까 안됐었다...

 

그 다음 시도로는 

모음집 안의 전체 상품갯수
	<select id="readProductCount" resultType="int">
  	select count(*) from product_list where p_setname=#{p_setname};
  </select>
  모음집 전체 가격
  <select id="readProductSum" resultType="int">
  	select sum(p_price) from product_list where p_setname=#{p_setname};
  </select>
  낱개가격
  <select id="readProductPrice" resultType="int">
  	select p_price from product_list where p_setname=#{p_setname};
  </select>

이런 식으로 일일히 나눠보았다...

그러니까 500번 에러가 떳었나?? 

하나의 값을 출력해야되는데 여러개가 들어있다면서 에러가 떴다....

 

나는 그날밤 엄청나게 골머리를 앓으며 잠에 들었다...

 

다음날... 

선생님께 이 문제를 여쭤보았더니.... 

선생님은 이걸 왜 리스트에 넣어!!?!?!?/ 라고 하시며,

vo에 넣으면 아주 간단히 해결되는 문제라고 하셨다.... 

 

이런이런...

@Data
public class ProductVO {
	private int count;
	private int sum;
	private int price;

 

이렇게 VO에 넣고, 

JSP 파일 안에는 

 

<p>상품의 총 갯수: <span>${readProductCount.count}</span> 전체 가격: <span>${readProductCount.sum}</span></p>
		  <button class="btn btn-primary" type="button">낱개 구매</button>
		  <p>낱개 가격: <span>${readProductCount.price}</span></p>

요렇게 넣었더니 해결이 되었다..............

물론 SQL 문장은 맨 처음에 썼던 문장으로 했다. ㅎㅎ

 

 

 

사실 밥이랑 숟가락을 주고 밥을 먹으라고 해도... 

숟가락을 처음 본 사람은 그걸로 밥을 어떻게 먹는지 잘 모를 것이다. 

밥 먹는 법을 모른다고??? 밥숟가락을 처음 보면 그럴 수도 있다....

 

숟가락으로 밥을 먹어보면 아주 간단한 일인데... 

해보기 전에는 엄청 생소한 것이다....

막대기인데 철로 되어있고 끝부분이 넙적둥그레한 이상한 물건.....

그것의 쓰임새를 알면 그다음부터는 그냥 숟가락으로 보인다.

 

난 오늘 숟가락으로 밥을 먹는 경험을 했다.... 

손으로 먹으면 엄청 뜨겁고 끈적끈적한데...

숟가락으로 먹으니 엄청 편했다............

 

이상

728x90