inflearn logo
강의

Khóa học

Chia sẻ kiến thức

CHỌN TẤT CẢ TỪ SQL

TRUY VẤN SUB

[서브쿼리] 예제 문제 Shipper_ID 총합 칼럼 추가 방법 문의

467

kichan

1 câu hỏi đã được viết

1

서브쿼리 예제 답으로

CustomerID 별 ShipperID_1,2,3 개수를 구하였는데

칼럼을 추가하여 ShipperID_Sum 값을 구하려면 어떻게 해야할까요? (ShipperID_1,2,3의 총합)

ex) CutomerID '5'의 경우

ShipperID_1 = 1

ShipperID_2 = 1

ShipperID_3 = 1 인데,

ShipperID_Sum = 3이 보이게끔 칼럼을 추가하고 싶습니다.

sql

Câu trả lời 1

0

kichan

스스로 정답을 찾아서 내용 공유합니다!

WITH(임시 테이블)라는 것을 사용하여 해결할 수 있었네요.

With Temp_table as
(
SELECT C.CustomerID, 
IFNULL(O1.ShipperID_1, 0) AS S1,
IFNULL(O2.ShipperID_2, 0) AS S2,
IFNULL(O3.ShipperID_3, 0) AS S3
FROM Customers AS C

LEFT JOIN (

SELECT CustomerID, Count(OrderID) AS ShipperID_1
FROM Orders
WHERE ShipperID = 1
Group By CustomerID

) AS O1
ON O1.CustomerID = C.CustomerID

LEFT JOIN (

SELECT CustomerID, Count(OrderID) AS ShipperID_2
FROM Orders
WHERE ShipperID = 2
Group By CustomerID

) AS O2
ON O2.CustomerID = C.CustomerID

LEFT JOIN (

SELECT CustomerID, Count(OrderID) AS ShipperID_3
FROM Orders
WHERE ShipperID = 3
Group By CustomerID

) AS O3
ON O3.CustomerID = C.CustomerID
)
Select CustomerID, S1, S2, S3, S1+S2+S3 AS SUM
From Temp_table

 

수료증 제공하나요?

0

17

1

노션링크

0

24

1

조회 대상 행이 적을 때도 Using filesort 제거를 고려해야 하나요?

0

46

2

SYSDATE 입력

0

42

1

테이블 생성 시 PK 및 제약조건 문의

0

52

1

TCL 문의

0

44

1

PK를 AUTO_INCREMENT UUID를 UNIQUE로 하는것에 대해

0

57

2

본질 및 인조 식별자 질문

0

40

1

pk를 auto increment로 하는것에 대해서

0

52

2

슈퍼키 문의

0

46

1

질문있습니다!

0

46

1

3-13 리텐션 과제 제출합니다!

0

72

2

실행 통계2 explain analyze 조인 쿼리

0

58

1

3강 인덱스 구조 강의 자료 문의

1

75

1

68강 문제 풀이

0

46

1

현대 쿼리 복잡성에 관한 질문

0

104

3

key_length 가 사용되는곳

0

49

1

[과제]1-9 피벗 테이블 만들어보기

0

67

2

w3school 결과 에러 관련 질문

0

204

2

수료증

0

1448

2

JOIN 사용시 ON과 USING 차이

1

1061

1

혹시 having 대신 where를 써도 되나요??

1

594

1

강의자료 질문

3

333

0

서브쿼리 연습은 어디서 많이 할 수 있을까요???

1

450

1