I have this result
Visitor name | City | Price |
---|---|---|
Neo | Japan | 95,000 |
Neo | NewYork | 100,000 |
Neo | Paris | 1,000,000 |
I want to get this result
Visitor name | Japan | NewYork | Paris |
---|---|---|---|
Neo | 95,000 | 100,000 | 1,000,000 |
I have this result
Visitor name | City | Price |
---|---|---|
Neo | Japan | 95,000 |
Neo | NewYork | 100,000 |
Neo | Paris | 1,000,000 |
I want to get this result
Visitor name | Japan | NewYork | Paris |
---|---|---|---|
Neo | 95,000 | 100,000 | 1,000,000 |
SELECT V.Visitor_name,
SUM
(
CASE
WHEN V.CITY='Japan' THEN V.PRICE
ELSE 0.00
END
)AS JAPAN,
SUM
(
CASE
WHEN V.CITY='NewYork' THEN V.PRICE
ELSE 0.00
END
)AS NewYork,
SUM
(
CASE
WHEN V.CITY='Paris' THEN V.PRICE
ELSE 0.00
END
)AS Paris
FROM YOUR_TABLE AS V
GROUP BY V.Visitor_name
If cities names are unknown, then please google "dynamic pivot"