如何根据条件将一个字段分为两个单独的字段

时间:2019-03-06 22:55:30

标签: sql filter pivot

我正在寻找有关以下问题的帮助。我正在寻找最优雅的方法来执行此操作,因为我目前的方法真的不好用。任何帮助将不胜感激:

我有这个:

cnumber     cid         prim
n100        123123      y         
n100        465488      n         
n123        798         y         
n768        544         y         
n455        123         y         
n455        098         n       

我希望得到这个:

cnumber     y           n         
n100        123123      465488
n123        798         NULL
n768        544         NULL
n455        123         98

1 个答案:

答案 0 :(得分:1)

这是您想要的吗?

select cnumber,
       max(case when prim = 'y' then cid end) as y,
       max(case when prim = 'n' then cid end) as n
from t
group by cnumber;