2012-10-25 39 views
0

我需要一些幫助來組織一張我必須創建的報表。不幸的是,表格的佈局很難處理。我知道pivot函數,但在這種情況下它不起作用,因爲我正在使用Intersystems的Cache SQL。雖然我沒有將這個問題作爲那種類型來推銷,因爲Cache SQL的援助基礎非常小。如果你能用你的語言解決它,它會幫助我。下面是表:SQL - 轉換行而不使用數據透視等

PID DE_Num DE_Val 
1001 102 arbitrary value 
1001 650 arbitrary value 
1001 6225 10/12/12 
1001 6227 01/14/09 
1343 809 arbitrary value 
1343 103 arbitrary value 
1343 6225 11/23/11 
1343 412 arbitrary value 
1343 6227 03/07/01 
1222 6225 05/19/12 
1222 6227 08/08/08 

我需要的結果表看起來像這樣:

PID DE_Num DE_Val 
1001 6225 10/12/12 
1001 6227 01/14/09 
1343 6225 11/23/11 
1343 6227 03/07/01 
1222 6225 05/19/12 
1222 6227 08/08/08 

有什麼建議? 讓我知道你是否需要更多信息。我再次不需要緩存SQL特定的信息。一般情況下,信息同樣非常有幫助!

+0

您可以詳細說明您用來決定是否複製行的規則嗎?起初我會說任意價值的東西,但是05/19/12'03/07/01'和朋友有什麼不同呢? – fvu

+0

選擇*從表中,DE_Num在6225和6227之間以完全任意的方式解決此問題。你寫的東西,雖然看起來與樞軸無關。你的意思是別的嗎? – Laurence

回答

1

那麼,生產這個輸出並不是很難。

select * 
from your_table_name 
where DE_Num > 6000 
order by PID, DE_Num 

但是,如果這就是您要找的東西,我會很驚訝。在你的問題中,我沒有看到任何暗示你需要PIVOT或任何類似PIVOT的東西。