我正在開發一個項目,我的老闆給了我。我沒有太多經驗,但我必須學習它。這是關於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