[ 문제 상황 ]

서브 쿼리와 함께 쿼리 입력시 정상적인 return이 되지 않습니다.

 

 

 

 [ 문제 원인 ]

서브 쿼리의 return 개수가 2개 이상으로 쿼리의 정상적인 return이 불가능하기 때문에 발생하는 오류입니다.

 

 

 

 [ 해결 방법 ]

 

SELECT S.scrap_id, S.place_id, S.room_id, S.user_id, S.status, (DATE_FORMAT(S.regdate, '%Y-%m-%d %H:%i:%s')) AS regdate, R.name, R.`type`, R.meta_imgs, R.price_time, R.deposit, R.price_month, R.introduction, R.convenience FROM scraps_history AS S JOIN rooms AS R WHERE S.user_id = 1 AND R.room_id = any(SELECT room_id FROM scraps_history WHERE user_id = 1) ORDER BY regdate DESC LIMIT 0, 5

위 쿼리를 아래처럼 변경해주면 됩니다. (서브쿼리 앞에 any 를 추가해줍니다.)

SELECT S.scrap_id, S.place_id, S.room_id, S.user_id, S.status, (DATE_FORMAT(S.regdate, '%Y-%m-%d %H:%i:%s')) AS regdate, R.name, R.`type`, R.meta_imgs, R.price_time, R.deposit, R.price_month, R.introduction, R.convenience FROM scraps_history AS S JOIN rooms AS R WHERE S.user_id = 1 AND R.room_id = any(SELECT room_id FROM scraps_history WHERE user_id = 1) ORDER BY regdate DESC LIMIT 0, 5

 

 

 

+ Recent posts