我正在开发一个项目,我的老板给了我。我没有太多经验,但我必须学习它。这是关于Oracle DB 11g的,我使用SQLPlus和PL/SQL作为查询语言。Oracle PL/SQL分析查询输出,写入文件
基本上对于每个查询语句,我将需要脚本来解释结果并输出true/false到文件。
例如,
select id from sample_table where id=3;
/**code needed that will do something like:**/
/**if(id=3), write to file TRUE, else, write to file FALSE**/
select salary from sample2 where id=5;
/**similar code needed as above**/
select employee from sample3 where id=6;
/** another TRUE or FALSE output to the file **/
我一直在使用DBMS_OUTPUT.PUT_LINE尝试,但对如何直接从报表的查询分析输出不知道。将非常感谢任何帮助!
行使用COUNT(*),以检查是否存在可以是一个更简单的方法当涉及的表包含大量行时,开销很大...... – 2011-05-25 11:50:23
鉴于他所有的示例都使用ID进行测试,我做出了合理的假设,即将有索引 - 使其成为纯索引查找(索引唯一扫描)。额外的SORT AGGREGATE出现在我的解释计划中,而不是大量的开销 – Chris 2011-05-26 09:05:04
我没有看到任何信息表明ID列是唯一的。如果它是唯一的,COUNT(*)仅仅是多余的,但对性能确实无害。如果没有,那么我的第一个评论仍然存在。我会添加一个FIRST_ROWS(1)提示和一个ROWNUM = 1谓词。 – 2011-05-26 10:23:21