[Mysql] 배열로 받아오기

XCC629·2022년 3월 23일
1

backend

목록 보기
7/8

배열이 필요할 때

products.Id, products.name, categories.name, image_urls.url을 셀렉트하였다고 가정해보았습니다. 이 데이터가 이상해보이는 이유는 imageUrl이 3개 인 바나나가 데이터가 3번 나타났기 때문입니다.

imageUrl을 배열로 묶으면 해결 될 것입니다.

쿼리문

SELECT
	.
    .
    JSON_ARRAYAGG(image_urls.url)
    .
    .
    GROUP BY products.id

배열을 만드는 부분만 작성해보았습니다.

일반적인 형식

SELECT
	JSON_ARRAYAGG(테이블.칼럼)
    GROUP BY (기준이 되는 테이블.칼럼)

where + group by / group by + order by

조건을 여러개 붙일 때 주의해야할 점이 있습니다. 문법에 맞게 조건의 순서를 정리하는 것입니다.

1️⃣ where + group by

where을 먼저 적어주고 group by를 적습니다.

2️⃣ group by + order by

order by를 마지막에 오게 합니다.

정리

3가지를 같이 쓰게 될 경우에는 이렇게 표현합니다.

where ... group by ... order by ....

profile
프론트엔드 개발자

0개의 댓글