我的加入知识很糟糕,我找不到正确的知识。我想加入TableA.userID和TableB.otherID上的两个表来匹配所需的输出。我没有在表格上设置任何外键或主键。我应该在这里使用什么?
TableA:
+--------+--------+---------+
| userID | field1 | field2 |
+--------+--------+---------+
TableB:
+--------+----------+---------+---------+---------+
| userID | otherID | myData1 | myData2 | myData3 |
+--------+----------+---------+---------+---------+
Desired Output:
+--------+----------+---------+---------+---------+--------+--------+
| userID | otherID | myData1 | myData2 | myData3 | field1 | field2 |
+--------+----------+---------+---------+---------+--------+--------+
答案 0 :(得分:2)
这应该这样做:
select a.userID, b.otherID, b.myData1, b.myData2, b.myData3, a.field1, a.field1
from TableA a
inner join TableB b
on a.userID = b.otherID
我建议在TableA.userID和TableB.otherID上添加索引。
答案 1 :(得分:1)
也许我误解了这个问题但是你不能只使用一个简单的INNER JOIN,假设USERID和OTHERID都是相同的数据类型,你不需要执行任何数据转换。
SELECT A.userID, B.otherID, B.myData, B.myData2, B.myData3, A.field1, A.field2
FROM TableA as A
INNER JOIN TableB as B
ON A.UserId = B.OtherId