如何加入两个不太相关的表

时间:2015-04-13 23:49:33

标签: php mysql

我真的很难加入?我如何加入两个表,唯一的关系是用户名。例如:

我有两张桌子。 tableone和tabletwo每个都有各自的行和列。

表一

id    trans_ref     username    amount
2      12345        peter         50
3       45678       john          30
4       8790        frank         10

表二

id     trans_ref     username     recurring     status     company     date_order      amt
1     78987           peter       weekly        paid       new lad      12/10/2015      30
2     88776           john        monthly       unpaid     green        15/05/2015      10
3     55667           frank       yearly        paid       blue         17/05/2015      25

如何执行连接以便所有值都可以使用

$stm = $pdo->....
while($row = $stm->fetch(PDO::FETCH_ASSOC)) {
    echo $row['status']; //etc
}

1 个答案:

答案 0 :(得分:0)

由于两个表都有一个trans_ref列,因此您需要至少为其中一个列添加一个别名,以便您可以从另一个表中清楚地访问它。

SELECT t1.trans_ref AS t1_trans_ref, t1.amount, t2.*
FROM table1 AS t1
JOIN table2 AS t2 ON t1.username = t2.username

$row['trans_ref']将是trans_ref的{​​{1}}列,table2将是$row['t1_trans_ref']的{​​{1}}列。