2

sqlplus コマンド ライン インターフェイスを使用してクエリを実行します。このクエリは、約 3,000 万件のレコードをフェッチします。結果を csv または xls 形式にエクスポートする必要があります。これが可能かどうか誰でも教えてもらえますか? どんな助けでも大歓迎です。前もって感謝します。

4

3 に答える 3

2

spool myresults.csvExcel で簡単に開くことができる select ステートメントの前に試してください。

編集

このような:

SET UNDERLINE OFF
SET COLSEP ','
--That's the separator used by excel later to parse the data to columns
SET LINES 100 PAGES 100
SET FEEDBACK off
--If you don't want column headings in CSV file
SET HEADING off 
Spool ~\myresults.csv
--Now the actual query
SELECT * FROM YOUR_TABLE;
Spool OFF

編集2

3,000 万件のレコードをクエリする場合は、結果をバッチ処理することをお勧めします。Excelファイルでそこまで行ったことはありませんが、制限は65535行です(30Mレコードの場合、458ファイルになります)。

クエリを 60K ブロックのブロックに分割し、整数をループして各ファイル名の末尾に連結することにより、各選択を別の Excel ファイルにスプールします。

于 2012-08-06T15:30:21.563 に答える
1
SET PAGESIZE 50000
SET FEEDBACK OFF
SET MARKUP HTML ON SPOOL ON
SET NUM 24
SPOOL sample.xls
SELECT * from users;
SPOOL OFF
SET MARKUP HTML OFF SPOOL OFF

このオプションは、Excel ファイルに直接エクスポートするのに役立ちます

于 2015-03-23T09:55:39.623 に答える
1
SET PAGESIZE 40000

SET FEEDBACK OFF

SET MARKUP HTML ON

SET NUM 24

SPOOL file_name.xls

---- Execute your query

SPOOL OFF

SET MARKUP HTML OFF

SPOOL OFF

sqlplus を xls 形式にスプールする

于 2018-04-07T12:07:08.187 に答える