要在同一个查询中返回不同的列是不可能的。 如果你的意思是要隐藏某个列的值那倒很容易。select col1, col2 , case when min_salary < 1000 and max_salary > 2500 then salary else null end salary from emp;
一看到这个标题,就想到了case when 最低工资少于1000,而且最高工资超过2500时 这句话是什么意思? 如果是2个字段名的话,楼上的语句就OK
--可以理解成1000,2500之间不显示数据!! select col1, col2 , case when salary between 1000 and 2500 then null else salary end salary from emp;
如果你的意思是要隐藏某个列的值那倒很容易。select col1, col2
, case when min_salary < 1000 and max_salary > 2500 then salary
else null
end salary
from emp;
最低工资少于1000,而且最高工资超过2500时
这句话是什么意思?
如果是2个字段名的话,楼上的语句就OK
--可以理解成1000,2500之间不显示数据!!
select col1, col2
, case when salary between 1000 and 2500 then null
else salary
end salary
from emp;
用procedure很不爽,莫非用一般sql语句真的做不到
如果不显示,也只是该列显示空值而已
只能用过程来判断执行哪一句sql