[英]SQL Convert number to a word
我正在编写一个简单的SELECT查询,以从SQL表中检索一组项目号。
现在从此表中,我想获取可以是三个之一的Item类型。 Make, Buy or undefined
。
我的问题是,这在数据库中以数字表示。 我的表有一个称为ITMTYPE
的列,但1 or 2 or 3 for Make, Buy or undefined
说1 or 2 or 3 for Make, Buy or undefined
。
谁能建议我将列添加到我的选择查询中,以显示项目类型的等效措词?
以下是我想看到的,
Item_Number Item_Type_Num Item Type_val
A 1 Make
B 2 Buy
C 3 Undefined
D 2 Buy
E 1 Make
我想看的是第三列。 谢谢
您可以使用CASE EXPRESSION
:
SELECT t.Item_Number,t.ITMTYPE as Item_Type_Num,
CASE WHEN t.ITMTYPE = 1 THEN 'Make'
WHEN t.ITMTYPE = 2 THEN 'Buy'
WHEN t.ITMTYPE = 3 THEN 'undefined'
END as Item_Type_Val
FROM YourTable t
如果您对此列有日常需求,建议您将其添加到表中:
ALTER TABLE YourTable
ADD Item_Val_Type VARCHAR2(10);
然后更新它:
UPDATE YourTable t
SET t.Item_Val_Type = CASE WHEN t.ITMTYPE = 1 THEN 'Make'
WHEN t.ITMTYPE = 2 THEN 'Buy'
WHEN t.ITMTYPE = 3 THEN 'undefined'
END;
使用简单的案例表达。
select
Item_Number,
Item_Type_Num ,
Case Item_Type_Num
when 1 then 'Make'
when 2 then 'Buy'
when 3 then 'Undefined'
else 'Unknown'
end as 'Item_type_val'
from Yourtable
CASE expression
WHEN value_1 THEN result_1
WHEN value_2 THEN result_2
...
WHEN value_n THEN result_n
ELSE result
END
select item_number
,case Item_Type_num
when 1 then 'Make'
when 2 then 'Buy'
else 'Undefined
end
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.