我在Postgres中执行SQL查询,它选择一个数字字段。我需要显示一个字符串值作为此SELECT的结果,所以我使用这样的CASE
语句:
Select
case numeric_field
when 100 then 'some string'
when 200 then 'some other string'
问题是如果数字字段有任何其他值(例如300
),我需要显示该值(当然是一个字符串)。我试着像这样把<{1}}放在其他地方
CONVERT
但它没有用。我该怎么做?
答案 0 :(得分:4)
SELECT CASE numeric_field
WHEN 100 THEN 'some string'
WHEN 200 THEN 'some other string'
ELSE numeric_field::text
END AS result
END
遗失了。 Read the manual here. 要将数字字段输出为文本,只需将其强制转换为文本:numeric_field::text
,这是SQL标准调用的Postgres特定简短形式:
cast (numeric_field AS text)