我还是SQL(Oracle)的新手.. 基本上在我正在选择的表上,有一个时间戳,有些是有效的邮票而有些则没有(存储在时间戳表上)..我有一个函数我可以在'where'子句中使用仅返回有效或无效的。
但有时我需要查看所有记录,其中包含“有效”或“无效”的其他栏目。我试过案例,就像这样;
select *, case when function(stamp)=1 then 'Valid' else 'Invalid'
但总是给我错误。我可能会弄错语法。任何人都可以帮我解决这个问题吗?
答案 0 :(得分:5)
你错过了CASE的END:
select *, case when function(stamp)=1 then 'Valid' else 'Invalid' end
答案 1 :(得分:2)
尝试类似
的内容select t.*,
case
when function(stamp) = 1
then 'Valid'
else 'Invalid'
end as valid_flag
from your_table t
where <whatever>
分享并享受。