2011-04-28 154 views
1

我想從Excel格式的SQL查詢中獲得結果。SQL-如何將數據從sql查詢輸出爲excel格式

例如:

SQL> clear breaks 
breaks cleared 
SQL> clear columns 
columns cleared 
SQL> clear compute 
computes cleared 
SQL> set pagesize 1000 
SQL> set NEWPAGE 1 
SQL> set linesize 100 
SQL> column id format a15 
SQL> column tarikh format a14 
SQL> column jenis_pengguna format a15 
SQL> Ttitle center 'ANALISIS PENGGUNAAN PORTAL BULAN APRIL 2011' skip 1 - center----------------------------------------------------------------------------skip3 
SQL> set linesize 100 
SQL> break on id skip 2 on tarikh 
SQL> compute count of tarikh on id 
SQL> SELECT id, tarikh, jenis_pengguna 
     FROM PENGGUNAAN 
     WHERE tarikh >= (sysdate)-30 
    GROUP BY (id, tarikh, jenis_pengguna); 

現在,我將如何得到那個Excel中可以使用或進口的結果?

+0

你必須使用一種編程語言來爲你做。你對任何感覺舒服嗎?也許PHP/Java/Python/Perl? – user183037 2011-04-28 02:03:43

+3

你能詳細說明你需要什麼嗎? CSV格式是可以接受的,因爲Excel可以打開它,或者你需要一個完整的Excel文件類型? – 2011-04-28 02:13:20

+0

您可以使用TOAD等產品,執行查詢右鍵單擊並將結果導出到Excel。 – 2011-04-28 02:15:40

回答

7

您可以生成的一種Excel格式是逗號分隔值或CSV。只要做到這一點與您的選擇:

set feedback off 
set linesize 100 
set pagesize 0 
spool yourfile.csv 

SELECT id||','||tarikh||','||jenis_pengguna 
    FROM penggunaan 
WHERE tarikh >= (sysdate)-30 
GROUP BY (id, tarikh, jenis_pengguna); 

您可能需要調整一些其他的設置,以獲得一個乾淨的純數據輸出,但是這應該讓你去。然後您可以使用Excel讀取文件。