我想用 .when()
. 我试过这样做:
x = (
spark.table('my_table')
.select(
'date'
'id',
.when(sf.col('name') == 'x', 'One'),
.when(sf.col('name') == 'y', 'Two'),
.when(sf.col('name') == 'z', 'Three'),
)
不过,我的语法似乎错了。我知道,在sql中,我也可以做到这一点:
select
date, id
case
when name = 'x' then 'One',
when name = 'y' then 'Two',
when name = 'z' then 'Three'
end as name
from
my_table
1条答案
按热度按时间piok6c0g1#
第一个
when
应该是sf.when
,另一个呢when
s应该连接到第一个when
: