添加前导零情况

gre*_*ode 1 sql case-when amazon-redshift

如果周数小于 10,我尝试在周数中添加前导零。两种 col 类型都是smallint,并且我尝试了以下代码,但它没有产生我想要的结果。我得到的结果:“20201”与我想要的“202001”。

SELECT CONCAT(CAST(yr_num AS VARCHAR), CASE WHEN CAST(wk_num AS VARCHAR) < 10 THEN '0' + wk_num ELSE wk_num  END) as year_wk FROM sometable
Run Code Online (Sandbox Code Playgroud)

我正在使用 redshift 进行此查询。

Gor*_*off 6

你要lpad()

select concat(yr_num, lpad(wk_num, 2, '0'))
Run Code Online (Sandbox Code Playgroud)

我认为您不需要转换 的数字concat(),但我手头没有 Redshift 可供测试。