gpt4 book ai didi

mysql - 如何内连接3个表

转载 作者:行者123 更新时间:2023-11-29 22:23:14 25 4
gpt4 key购买 nike

如何连接三个表,我有3个表,分别是buku、sedia和perpus,buku具有属性idbuku、namapengarang、namabuku、penerbit、genre和tahunterbit.perpus具有属性idperpus、namaperpus和alamat.and sedia具有属性 stok、idperpus 和 idbuku我想问的是我尝试使用语法内连接 3 个表

select * from buku inner join sedia where buku.idbuku =sedia.idbuku;

它有效,但是当我尝试时

select * from buku inner join sedia where buku.idbuku =sedia.idbuku inner join perpus where sedia.idperpus = perpus.idperpus;

代码有错误,它显示警告:mysql_fetch_array() 期望参数 1 为资源,第 64 行给出 bool 值。

谁能告诉我我该怎么办?

我的 php 代码仍然无法正常工作

<?php
include "koneksi.php";

$cari=$_POST["cari"];
$rbut=$_POST["rbut"];

if (isset($cari)||isset($rbut)){
$sql = "select * from buku where $rbut like '%$cari%'inner join sedia on buku.IDbuku = sedia.IDbuku inner join perpus on sedia.IDperpus = perpus.IDperpus;";
$result = mysql_query($sql);
}
elseif(!isset($cari)||!isset($rbut)){
$cari=$_POST["cari"];
$rbut=$_POST["rbut"];
$sql = "select * from buku";
$result = mysql_query($sql);
}
echo "
<table border='1'><tr><th>ID</th><th>Nama Pengarang</th><th>Nama Buku</th><th>Penerbit</th><th>Genre</th><th>Tahun Terbit</th></tr>";

while($row=mysql_fetch_array($result)){
echo "
<tr>
<td>$row[IDbuku]</td>
<td>$row[NamaPengarang]</td>
<td>$row[NamaBuku]</td>
<td>$row[Penerbit]</td>
<td>$row[Genre]</td>
<td>$row[TahunTerbit]</td>
</tr>";
}
echo "
</table>";
?>

最佳答案

您的 where 条件必须是 on:

select * 
from buku
inner join sedia on buku.idbuku =sedia.idbuku
inner join perpus on sedia.idperpus = perpus.idperpus;

参见documentation有关连接语法的更多信息。

** 更新 **您的新查询是错误的:

$sql = "select * from buku inner join sedia on buku.IDbuku = sedia.IDbuku inner join perpus on sedia.IDperpus = perpus.IDperpus where $rbut like '%$cari%'";

如果您阅读文档,您会发现 where 语句必须位于 joun 语句之后。

关于mysql - 如何内连接3个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30523550/

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