2017-05-19 59 views
-2

我有一張表格,其中包含以下記錄,如圖11所示。如何從oracle中的一行中的不同列中獲取值11g

enter image description here

我要記錄這樣

The cntry_1,cntry_2,cntry_3,cntry_4

的cntry_1,cntry_2,cntry_3,cntry_4根據第一個表格的country_type_id。 country_type_id 1 =列cntry_1

+3

您使用的是MySQL還是Oracle?不要標記不涉及的產品。 – jarlh

+2

這裏的大多數人都想格式化文本(而不是圖像)。 – jarlh

+0

問題看起來很清楚,對我來說還可以。我可以閱讀圖片上的文字,因爲大腦。 –

回答

2

你將不得不使用PIVOT來達到你要找的。您可以使用它像這樣:

SELECT * 
FROM 
(
    SELECT t.[Business name], 
      t.is_default, 
      t.is_active, 
      t.context, 
      t.country, 
      t.country_type_id 
    FROM  TableName t 
) src 
PIVOT 
(
    MAX(Country) 
    FOR country_type_id IN ([1], [2], [3], [4]) 
) piv 

看到這個在這裏 - >http://rextester.com/HUK42854

希望這有助於!

+0

非常感謝! –

+0

@NiharikaUpadhyay不客氣! :) –

相關問題