Contents
내가 작성한 쿼리
각 행이 (product_id, 스토어, 가격)을 가지도록 제품 표를 재배열하는 솔루션을 작성합니다. 스토어에서 제품을 사용할 수 없는 경우 결과 표에 해당 product_id와 스토어 조합이 포함된 행을 포함하지 마십시오. 결과 테이블을 순서에 상관없이 반환하세요.
내가 작성한 쿼리
Oracle
SELECT * FROM Products UNPIVOT ( price for store in ( store1 as 'store1', store2 as 'store2', store3 as 'store3' ) )
MySQL
SELECT product_id, 'store1' AS store, store1 AS price FROM Products WHERE store1 IS NOT NULL UNION ALL SELECT product_id, 'store2', store2 FROM Products WHERE store2 IS NOT NULL UNION ALL SELECT product_id, 'store3', store3 FROM Products WHERE store3 IS NOT NULL;
차이점
UNPIVOT
- 열을 행으로 변환할 때 사용하는 연산
Oracle
: 지원 OMySQL
: 지원 X →UNION ALL
을 활용
Share article