SQL:根据查询输出打印我自己的消息

时间:2009-11-27 08:16:02

标签: sql oracle

如何根据SQL问题的输出打印自己的消息。 例如:

print "got it" when select * from emp wherempno=10;  return atlest one record.
else " not presnet" when the above quesry returns 0 records

我只有一个sql问题,而不是一个Pl / SQL代码。我正在使用oracle 9 db。

3 个答案:

答案 0 :(得分:1)

您可以尝试在子查询中获取总数,然后有选择地在case语句中返回结果。

我目前无法访问oracle,因此语法可能不完美,但下面的内容应该有效

select
  case t.c
    when 0 then 'not presnet'
    else 'got it'
  end as result
  from
    (select count(*) as c from emp wherempno=10) t

答案 1 :(得分:1)

这可行(在OracleXE上测试):

SELECT CASE WHEN COUNT(1) = 0 THEN 'not present' ELSE 'got it' END
FROM emp
WHERE mpno = 10

答案 2 :(得分:0)

您是否可以使用ROWCOUNT来确定受影响的行数,然后将其与IF语句结合使用以实现您的目标?