我有一个可以存储3个值的 text 列(我们称之为status
):
open
,received_complete
,closed
我想创建一个符合以下规则的新数字列(让我们称之为stata
):
status
列为open
,则stata
为1
,status
列为received_complete
,则stata
为2
,status
列为closed
,则stata
为3
。 如何使用Oracle SQL实现此目的?
答案 0 :(得分:2)
这与asked a month ago的问题基本相同吗?听起来你只需要对你在另一个问题中得到的case
陈述稍作修改
SELECT case when status = 'open' then 1
when status = 'received_complete' then 2
when status = 'closesd' then 3
else null
end stata
FROM your_table
答案 1 :(得分:0)
您可以使用简单的“case”表达式
来完成此操作update table set stata =
case when status = 'open' then 1
when status = 'received_complete' then 2
when status = 'closed' then 3
end