gpt4 book ai didi

PHP mysql如何连接两个表以链接一个表中的名称并从另一个表中发布

转载 作者:搜寻专家 更新时间:2023-10-30 22:09:32 25 4
gpt4 key购买 nike

所以我现在很不擅长这个,我现在有这段代码

$test = "SELECT `status`,`pubdate` FROM `status` ORDER BY `pubdate` DESC";
$stmt = $db->prepare($test);
$stmt->execute();
while($row = $stmt->fetch(PDO::FETCH_ASSOC)){
echo "<section class='statusar'>"."<article>";
echo $row['status'];
echo $row['pubdate'];
echo "</article></section>";
}

它显示了帖子,但现在我想从另一个表中获取用户的名字并将其与帖子一起显示。我该怎么做?

我的两张表是这样的

这是包含帖子的表格

Status_id  int          unsigned       auto_increment  primary
user_id int unsigned index
status varchar(600)
pubdate datetime

这是另一张表

user_id   int         unsigned auto_increment primary index
firstname varchar(30)
surname varchar(30)
username varchar(30) unique
password varchar(90)

我这样做了所以他们在 user_ids 之间有关系

编辑

我想我想通了,因为现在它可以工作了:D所以现在当我使用

SELECT status, pubdate,firstname,surname FROM status INNER JOIN 用户 ON status.user_id = user.user_id ORDER BY status.pubdate DESC

它显示了所有我想要的东西,我也试过了

SELECT * FROM status INNER JOIN user ON status.user_id = user.user_id ORDER BY status.pubdate DESC";

这也很有效,谢谢大家的帮助 :D

最佳答案

只需使用内部连接:

SELECT s.status, s.pubdate, u.firstname
FROM status s
INNER JOIN usertable u ON s.user_id = u.user_id
ORDER BY s.pubdate DESC

这假设 user_id 存在于 usertable 中。如果不是这种情况,您可能希望使用 outer join

关于PHP mysql如何连接两个表以链接一个表中的名称并从另一个表中发布,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35555953/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com