2016-09-15 121 views
-1

分組,我不知道如果我對這個問題的標題是正確的, 但這裏是我的問題PostgreSQL的 - 比較兩個表的列

我有兩個表(TB1和TB2)都具有相同的列,這裏是結構..

TABLE_NAME | COLUMN_NAME | DATA_TYPE 

那麼我想所有的值列名通過table_name的DATA_TYPE分組比較

返回表應該至少像這樣(樣本數據)...

TABLE_NAME | COLUMN_NAME (TB1) | COLUMN_NAME (TB2) | DATA_TYPE 
user_account |  id   |  id   | charvar 
user_account |  user_name  |  user_name  | charvar 
user_account |  date_expire |   -   | charvar  
user_account |  -   |   gender  | int 
user_account |  gender   |   -   | charvar 
employee  |  id   |  id   | charvar 
employee  |  full_name  |  full_name | charvar 

抱歉,但我還沒有開始任何疑問,因爲我真的不知道從哪裏/開始的.. 在此先感謝所有誰將會響應:d

+0

Oracle和MySQL或PostgreSQL? – jarlh

+0

嗨,先生,這是postgresql – john1717

回答

1

我想你想full outer join

select coalesce(tb1.table_name, tb2.table_name) as table_name, 
     tb1.column_name, tb2.column_name, 
     coalesce(tb1.data_type, tb2.data_type) as data_type 
from tb1 full outer join 
    tb2 
    on tb1.table_name = tb2.table_name and 
     tb1.column_name = tb2.column_name and 
     tb1.data_type = tb2.data_type; 
+0

waaa ...這一個工作就像一個魅力XD ...謝謝先生 – john1717