在CASE ELSE语句-PostgreSQL中设置END AS的数据类型



我想让INT成为我正在创建的列的数据类型。我该怎么做?我尝试将AS INT添加到end AS"的末尾;salary_ deviation";但这并不奏效。我试着在CAST((中包装END AS,但也没用。

CASE 
WHEN c.salary = pair.salary THEN '6'

WHEN c.salary-pair.salary <= 25000 THEN '5'

WHEN c.salary-pair.salary <= 50000 THEN '4'

WHEN c.salary-pair.salary <= 75000 THEN '3'
WHEN c.salary-pair.salary <= 100000 THEN '2'

ELSE
'1'
END AS "salary_deviation"

有什么语法方面的想法吗?

CASE 
WHEN c.salary = pair.salary THEN 6 :: integer
WHEN c.salary-pair.salary <= 25000 THEN 5
WHEN c.salary-pair.salary <= 50000 THEN 4
WHEN c.salary-pair.salary <= 75000 THEN 3
WHEN c.salary-pair.salary <= 100000 THEN 2
ELSE 1
END AS "salary_deviation"

最新更新