Oracle-Sql-Developer

在 SQL 開發人員中導出查詢結果,而無需執行兩次查詢

  • August 8, 2019

無論如何都可以在 Oracle SQL Developer 中導出查詢結果而不必執行兩次查詢?在工作表中執行 SQL 查詢,然後右鍵點擊結果集視窗 -> 導出數據 -> 文本將再次執行查詢。

有一些 SQL Developer 特定的評論/“提示”。例如,如果您將以下內容作為腳本 (F5) 而不是語句 (Ctrl-Enter) 執行:

select /*csv*/ * from table;

您將第一次獲得 CSV 格式的結果。您甚至可以像在 SQL*Plus 中一樣假離線輸出。因此,您可以將下面的程式碼塊作為腳本執行(選擇行和 F5),並一次直接獲取 CSV:

spool C:\Users\XYZ\Desktop\my.csv
select /*csv*/ * from table;
spool off

從 4.1 版開始,您甚至不需要使用上述註釋/“提示”。你可以:

SET SQLFORMAT csv

然後將您的查詢作為腳本執行。

更多選項在這裡: http ://www.thatjeffsmith.com/archive/2012/05/formatting-query-results-to-csv-in-oracle-sql-developer/

是的,但是很貴。如果您將所有行提取到客戶端,則導出將使用該記錄集進行導出。

如果它是幾行的長時間執行查詢,沒什麼大不了的。如果這是對數百萬條記錄的長時間執行查詢,您可能會耗盡 JVM 或讓網路人員/gal 感到不安。

我在這裡更多地談論這個。

TL / 博士;

滾動到網格中數據集的末尾,一旦所有行都在那裡(不再獲取),如果您進行導出,數據將來自那里而不是再次執行查詢。

引用自:https://dba.stackexchange.com/questions/117633