是否可以在SQL中添加select语句或者在SQL中添加函数
select case when :A='do' then (select col1 from table1) else 'n/a' end
;
或
select if(:A='do',(select col1 from table1),'N/A');
如果我的参数是'做'它应该显示表格中的所有值,否则它应该只显示N / A'。
请帮帮我。谢谢!
答案 0 :(得分:1)
如果这是Oracle,根据您的标记,那么您的查询都不是有效的,因为他们实际上并没有从表中进行选择。
也许你所追求的是:
select case when :A='do' then col1 else 'n/a' end col
from table1;
或者你可能会喜欢这样的事情:
select col1
from table1
where :A != 'do'
union all
select 'N/A' col1
from dual
where :A = 'do';
您没有提供任何示例数据,所以我不确定您尝试做的是,如果绑定变量为“do”或者是否为“do”,则col1的所有值都显示为“N / A”你只想要一行包含'N / A'。