【发布时间】:2022-12-21 13:54:45
【问题描述】:
我的表中有以下数据:
| sku | grade | price |
|---|---|---|
| iphone | A | 700 |
| iphone | B | 600 |
| samsung | A | 200 |
我想合并基于 sku col 的行,并根据等级值将 cols 作为 A_price 和 B_price。
结果应该是:
| sku | A_price | B_price |
|---|---|---|
| iphone | 700 | 600 |
| samsung | 200 | null |
我尝试了以下查询:
SELECT
CASE WHEN grade = 'A' THEN price end as A_price,
CASE WHEN grade = 'B' THEN price end as B_price
FROM dataTable
GROUP BY sku
但它给我的错误是“不是按表达式分组”。
【问题讨论】: