[英]Joining two tables based on specific column value
我有兩個表(表1和表2),我想加入它們並創建表3.邏輯如下:
表格1
column1 | column2 | 欄3
user1 | ID1 | 名1
user2 | ID2 | NAME2
user3 | ID3 | NAME3
user4 | ID4 | NAME4
表2
column1 | COLUMN2
user1 | ACT1
user1 | ACT1
user1 | ACT1
user1 | ACT1
user2 | ACT2
user3 | ACT3
user3 | ACT3
user3 | ACT3
user4 | ACT4
表3
column1 | column2 | 欄3
user1 | ACT1 | ID1
user1 | ACT1 | ID1
user1 | ACT1 | ID1
user1 | ACT1 | ID1
user2 | ACT2 | ID2
user3 | ACT3 | ID3
user3 | ACT3 | ID3
user3 | ACT3 | ID3
user4 | ACT4 | ID4
基本上,表3與表2相同。但是,每個用戶的相應ID從Table1獲取並作為單獨的列連接。 對所有用戶重復此過程。
您只需要使用Table1
和Table2
column1
列的JOIN
select t2.*,t1.column2 as column3
from Table1 t1
inner join Table2 t2 on t1.column1 = t2.column1
[結果] :
| column1 | column2 | column3 |
|---------|---------|---------|
| user1 | ACT1 | ID1 |
| user1 | ACT1 | ID1 |
| user1 | ACT1 | ID1 |
| user1 | ACT1 | ID1 |
| user2 | ACT2 | ID2 |
| user3 | ACT3 | ID3 |
| user3 | ACT3 | ID3 |
| user3 | ACT3 | ID3 |
| user4 | ACT4 | ID4 |
看來你需要基於column1的table1和table2之間的內部聯接
select t1.column1, t2.column2, t1.column2 as column3
from table1 t1
inner join table2 t2 on t1.column1 = t2.column1
你可以更簡單地得到答案:
select t1.column1, t2.column2, t1.column2 as column3
from table1 as t1, table2 as t2
where t1.column1 = t2.column1
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.