5 回答

TA贡献1848条经验 获得超10个赞
SELECT last_name,salary,CASE job_id WHEN 'IT_PROG' THEN 1.10*salary WHEN 'ST_CLERK' THEN 1.15*salary WHEN 'SA_REP' THEN 1.20*salary ELSE salary END "REVISED_SALARY" FROM employees;

TA贡献1155条经验 获得超0个赞
oracle when 和 then怎么用!!!
先要抛出一个case就是一个情况,然后这个情况不同的条件下,得到不同的值,when就是条件,而then就是得到值。
select case
when column >= 1 then '比1大'
when column 1 and column > 0 then '比1小的正数'
else '小于等于0'
end as number_desc
from table
----------以上是一个例子
另外,case后边也可一个跟着一个具体的情况,而when判断这个情况的值
select case sign(column - 1)
when 1 then '比1大'
else '小于等于1'
end as number_desc
from table

TA贡献1864条经验 获得超6个赞
SELECT col1, col2,
CASE
WHEN col3 > 1 AND col3 <2 THEN
'1'
WHEN col3 > 3 AND col3 <4 THEN
'3'
ELSE
'4'
END mylevel
FROM table1
- 5 回答
- 0 关注
- 641 浏览
添加回答
举报