如何连接两个表列?

时间:2015-01-04 16:27:02

标签: php mysql join

我有一个mysql表用户

username     name
---------   ------

u1           abc
u2           xyz
u3           mrz 

另一个是交易

product     price      buyer seller
---------   ------    ------ -------

antivirus   20           u1    u3     
e-book      10           u2    u1

我希望显示为

product     price      buyer seller
---------   ------    ------ -------

antivirus   20           abc    mrz     
e-book      10           xyz    abc

我的问题是如何加入这两个表?以及如何显示数据,好像我回显为行['name']它将为买家和卖家显示相同的名称?

3 个答案:

答案 0 :(得分:1)

试试这个会起作用:

使用内部加入

 SELECT t1.`product` AS `product`,t1.`price` AS `price`,t2.`name` AS `buyer`,t3.`name` AS `seller` FROM trading t1
JOIN user t2 ON t2.`username`=t1.`buyer`
JOIN user t3 ON t3.`username`=t1.`seller`

输出

enter image description here

答案 1 :(得分:0)

我会在你最后的回复中回答,因为它不能正确缩进。

$result=mysql_query($query); // get the query

if(!$result){
    // if fails, do your things..
}

while($row=mysql_fetch_assoc($result)){
    // get data, i.e: print it ALL ROWS!
    echo $row['seller'];
    echo $row['price'];
    // and more...
}
mysql_free_result($result); // free the resource.

如果我没有误解你,那么你就可以与他们合作。

答案 2 :(得分:-1)

SELECT t.product AS product,t.price AS price,u1.name AS buyer,u2.name AS seller 来自交易t JOIN用户u1 ON(t.buyer = u1.username) JOIN user u2 ON(t.buyer = u2.username);