猿问

尝试在使用回显行时将发送方和接收方与内部联合表分开

我已经从数据库中检索了整个表作为一个整体并拥有所有值,但是由于发送方和接收方在同一张表上,因此在使用 echo 在我的 html 页面的表上显示它们时出现问题


我试过用


<?php

echo echo  $row["u.username"]

?>


<?php

echo echo  $row["us.username"]

?>

像我在查询中所做的那样将发送方和接收方分开但我收到此错误 注意:未定义索引:us.username in C:\xampp\htdocs\otkoth\status.php 如您所见,我不得不更改我的运输详细信息id 到 sid 以便在表格中显示这是当前的输出

我的表运输详细信息有来自 4 个不同表的 6 个外键要清楚这个查询确实检索数据我的问题但是将我在连接期间使用的列与同一个表中的列分开


SELECT * from shippingdetails s 

  inner join parcel p on s.parcelid = p.id

  inner join offices o on s.officeid = o.id

  inner join offices of on s.destinationid = of.id

  inner join users u on s.senderid = u.id

  inner join users us on s.recepientid = us.id

  inner join vehicle v on s.vehicleid = v.id

http://img2.mukewang.com/61849dcf0001093013420083.jpg

我希望将买家和接收者分开,然后为起点和目的地复制相同的内容,而不是输出城市名称和位置以使其更逼真

慕的地10843
浏览 117回答 2
2回答

犯罪嫌疑人X

如果空间允许,我会这样做作为评论:你的问题不是很清楚。但是,如果您必须将表与自身连接起来,则需要在列名上使用别名以确保它们是唯一的。如果我有一个名为 my_table 的表,其中包含id、a和b列,并且我希望将其与自身连接,我可能会这样做:SELECT t1.a AS a1, t1.b AS b1, t2.a AS a2, t2.b as b2 FROMmy_table t1 JOIN my_table t2 ON t1.id = t2.id;上面是一个荒谬的例子,因为我只是将相同的值 a1、b1 与 b1 和 b2 复制到每一行。但是您可以看到我如何通过使用别名为每列指定一个唯一名称。当然,您不必像我所做的那样对两个表都使用别名。这是你想要完成的吗?

江户川乱折腾

根据 Ronald Aaronson 的说法,非常感谢您的反馈,我应该重命名我需要的行,如果它们来自使用as的同一个表 ,它在这里工作是我必须将查询更改为$sql = " SELECT sid, p.name, u.username, us.username as ususername,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; v.platenumber, o.location,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; of.location as oflocation,&nbsp;&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; checkpoint from shippingdetails as s&nbsp; join parcel as p on s.parcelid = p.id&nbsp; join offices as o on s.officeid = o.id&nbsp; join offices as of on s.destinationid = of.id&nbsp; join users as u on s.senderid = u.id&nbsp; join users as us on s.recepientid = us.id&nbsp; join vehicle as v on s.vehicleid = v.id ";因此我的 echo 语句必须看起来像对于发件人和收件人<?php echo&nbsp; $row["username"]?><?php echo&nbsp; $row["ususername"]?>目的地和出发地<?php echo&nbsp; $row["location"]?><?php echo&nbsp; $row["oflocation"]?>如果有人需要更多帮助,他们可以参考此链接以获取更多见解 https://www.phpknowhow.com/mysql/joins/
随时随地看视频慕课网APP
我要回答