2016-08-12 67 views
-2

我是PL/SQL中的初學者,並且遇到問題。 我有兩個表如下圖所示:我需要PL/SQL中的代碼

Table_1 

Customer   Hometown    Request 
----------------------------------------------- 
John    London    Car 
John    London    House 
Michael   Amsterdam    Car 
Michael   Amsterdam   Computer 
Alan    Manchester   Yacht 
Mehmet    Istanbul   Telephone 


Table_2 

Customer   Hometown    Request 
----------------------------------------------- 

Michael   Amsterdam    Car 
Michael   Amsterdam   Computer 
Alan    Manchester   House 
Chris    Liverpool   Telephone 
David    London    Car 
Ali    Istanbul   Computer 
Arda    Istanbul   Telephone 

的問題是:

有客戶約翰和穆罕默德在TABLE_1但不TABLE_2。 什麼是John的請求在Table_1中?他們是汽車和房子。 誰希望汽車或房子和家鄉在表2中是倫敦?這是大衛。 什麼是穆罕默德在Table_1中的請求?它是電話。 誰願意電話和家鄉在Table_2的伊斯坦布爾?這是阿爾達。 不久,我想要table_1中存在的客戶的客戶等價物,而不是table_2中的hometowns和請求在table_2中的客戶相同。 所以我想看看這個表:

Customer_Table_1  Customer_Table_2 Hometown  Request 
------------------------------------------------------------- 
    John     David   London  Car 
    Mehmet    Arda   Istanbul  Telephone 

我在SQL做它,我看到這個表,我用透視。但我想使用PL/SQL,我不知道它是如何做到的。 如何在PL/SQL中執行此操作? 感謝您的幫助。

+0

你的問題是可以實現嗎?你的解釋並沒有真正的幫助。 –

+0

不久我想要Table_1和Table_2之間的公共請求。 – yilmazosmanfurkan61

+2

如果您已經可以在SQL中執行此操作,那麼您想在PL/SQL中執行什麼操作?如果你想使用PL/SQL中的值做某些事情,你可以使用遊標,for循環,甚至select into。 – ErikL

回答

1

我認爲這是可以通過一個簡單的INNER JOIN

select a.Customer, b.Customer, a.hometown, a.request 
    from table_1 a inner join table_2 b 
    on a.hometown = b.hometown and 
     a.request = b.request; 
+0

我做到了,我使用了樞軸和連接。但我想在plsql中創建過程或功能。 – yilmazosmanfurkan61

+0

以及函數或過程的目標是什麼? – ErikL

+0

我的導師想讓自己滿意 – yilmazosmanfurkan61