2012-09-10 51 views
-1

我有兩個表。如果第一個表格(朋友電子郵件)與第二個表格(用戶標識)匹配,則 然後我將此記錄插入到第三個表格中。在第三臺數據庫查詢加入表

u1-->useremail 
u2-->Friendemail 

則它也包含

u2-->useremail 
u1-->Friendemail 

是否有可能使用查詢???

表1

Useremail  Friendemail 

1. u1    u2 
2. u1    u3 
3. u1    u4 
4. u2    u3 

表2

id 
u1 
u2 
u3 

表3

Useremail Friendemail 
1. u1    u2 
2. u1    u3 
3. u2    u3 
4. u2    u1 
5. u3    u1 
6. u3    u2 

回答

1

首先使用SE選擇數據LECT查詢和應用聯接然後插入到表

insert into table3(usermail,friendmail) (select table1.usermail,table1.friendmail from table1 inner join table2 on table1.usermail=table2.userid and table1.friendmail in (select userid from table2) union select table1.friendmail,table1.usermail from table1 inner join table2 on table1.friendmail=table2.userid and table1.usermail in (select userid from table2)); 

可能它會幫助你.....

+0

它只有一個途徑入境,但如果我需要U3 - > U2則???? – user1241838

+0

@ user1241838現在嘗試將此插入到table3(usermail,friendmail)(選擇table1.usermail,table1.friendmail從table1內部連接table2在table1.usermail = table2.userid和table1.friendmail(從table2選擇用戶標識)union select table1 .fmailmail,table1.usermail from table1內部連接table2在table1.friendmail = table2.userid和table1.usermail in(從table2中選擇用戶標識)); – Hunter

+0

@ user1241838先前我忘記了改變選擇語句的順序,這就是爲什麼它只給出3個結果,現在它根據您的要求給出6個結果 – Hunter