我在同一数据库中有6个表。我想显示这6个表中的所有数据,并在浏览器中将其显示为一个表。因此,我为此使用了完全内部联接。我尝试了下面的代码,但是它抛出诸如“ mysql_num_rows()期望参数1为资源,布尔值”的错误。
$sql ="SELECT * FROM table1 INNER JOIN table2 ON table1.pk1=table2.fk2
INNER JOIN table3 ON table1.pk1=table3.fk3 INNER JOIN
table4 ON table1.pk1=table4.fk4 INNER JOIN table5 ON
table1.pk1=table5.fk5 INNER JOIN table6 ON table1.pk = table6.fk6";
$result = mysql_query($sql);
if (mysql_num_rows($result) > 0) {
while($row = mysql_fetch_array($result)) { //display function
}
并且可以在mysql中使用完全外部联接吗?
最佳答案
如果查询失败,结果将为布尔值。
如果添加以下内容,输出是什么:
if($result === false) {
var_dump(mysql_error());
}
Mysql不支持完全连接,但是请参见https://stackoverflow.com/a/4796911/3691688
另外,您应该为它们设置查询格式,以使其更易于阅读(例如,将单独的联接连接到它们自己的行并使用indets)
关于mysql - 使用内部联接在同一数据库中联接5个以上的表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/32413628/