본문 바로가기
개발공부/DB

[sql] distinct 중복 제거하기

by dokii 2021. 2. 23.
728x90

일반적으로 select문에서 중복여부에 상관없이 모든 자료를 요청한다.

 

이때 이용할것이 distinct.

해당 키워드를 사용하면 중복되는 컬럼이 제외된다.

 

SELECT DISTINCT {컬럼명} FROM {테이블명} {조건절} 의 형태로 사용할수 있다.

 

팀 프로젝트 [고기당]을 진행하면서 짜봤던 예시.

<select id="getStoreListAjax" parameterType="java.util.HashMap" resultType="StoreVO">
	select distinct img , meat , price, s_name, s_addr , star
	from
	
		(select distinct mr.img , mr.meat , mr.price, sr.s_name, substr(sr.s_addr,1,2) s_addr, re.star 
			from menu_reg mr inner join shop_reg sr on mr.s_num=sr.s_num inner join review re on re.s_num=sr.s_num
		where  
			 	
			 substr(sr.s_addr,1,2) in <foreach collection="s_addr" item="item" index="index" open="(" close=")" separator=",">#{item}</foreach>
				
		)		
	where 
		meat in<foreach collection="meat" item="item" index="index" open="(" close=")" separator=",">#{item}</foreach>
</select>

 

 

 

 


참고한 블로그 :velog.io/@kimju0913/SQL-%EC%A4%91%EB%B3%B5%EC%A0%9C%EA%B1%B0-DISTINCT-GROUP-BY

728x90

댓글