gpt4 book ai didi

php - 使用一个 MySQL 查询的结果插入到另一个查询中

转载 作者:行者123 更新时间:2023-11-29 09:02:06 24 4
gpt4 key购买 nike

我正在尝试使用 PHP 和 MySQL 自动生成这样的列表。

主题#1

  • 资源 #3
  • 资源 #5
  • 资源#12

主题#2

  • 资源 #7
  • 资源#4
  • 资源#1

等等

以下是表格:

资源

  • 埃里德
  • 标题

主题

  • sid
  • 标题

主题图

  • sid
  • 埃里德

以下代码成功地按字母顺序为我提供了所有主题:

$subjectQuery = "SELECT * FROM subjects WHERE sid != 17 ORDER BY stitle ASC";
$subjectResult = $mysqli->query($subjectQuery);

while ($subjectArray = $subjectResult->fetch_assoc()) {
print "<h5 class='subcategory'>" . $subjectArray['stitle'] . "</h5>";
print "<div class='inner'>

// Need a list of resources that match each subject ID (sid) here!

</div>";
}

现在,这是成功为我提供具有固定主题 ID 的所有电子资源的代码:

$getERBySubjectQuery = " SELECT erid FROM subjectmap WHERE sid=11 ";
$getERBySubjectResult = $mysqli->query($getERBySubjectQuery);
if($getERBySubjectResult && $getERBySubjectResult->num_rows >= 1){
while($getERBySubjectArray = $getERBySubjectResult->fetch_assoc() ){
$query = " SELECT * FROM eresources WHERE erid = " .$getERBySubjectArray['erid']. " ORDER BY ertitle ASC ";
$result = $mysqli->query($query);

if($result && $result->num_rows >= 1){
while($array = $result->fetch_assoc() ){
print("<a href=\"" . $array['link'] . "\">" . "<h5 class='subcategory'>" . $array['ertitle'] . "<div class='accessnote'>" . $array['access'] . "</div></h5></a>");

}}}}

当然,我不倾向于为每个主题 ID (sid) 重复相同的节。我希望自动生成主题列表以及自动生成具有该主题的资源列表。

基本上,我需要将每个主题的 sid 从第一节输入到第二节。

最佳答案

通过使用 WHERE 子句,我认为 Frits van Campen 的查询可能更具人类可读性,特别是对于初学者来说:

SELECT subject.stitle, eresource.etitle
FROM subject,subjectmap,eresource
WHERE subject.id = subjectmap.sid
AND eresource.id = subjectmap.erid
ORDER BY subject.stitle, eresource.etitle

关于php - 使用一个 MySQL 查询的结果插入到另一个查询中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8303516/

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