新列取决于sql条件

pieyvz9o  于 2021-08-09  发布在  Java
关注(0)|答案(2)|浏览(438)

假设我有一个包含两列的表,如下所示:

如果id的类型是 credit card . 怎么做?

4si2a6ki

4si2a6ki1#

如果我没弄错的话你可以用 case 表达式添加另一列,如下所示

select
  ID,
  Type,
  case 
    when Type = 'Credit Card' then yourValue
  end as yourColumnName
from yourTable
dl5txlt9

dl5txlt92#

如果我理解正确,它将使用窗口函数:

select t.*,
       max(case when type = 'Credit Card' then 1 else 0 end) over (partition by id) as has_credit_card
from t;

相关问题