我有两个名为0_vrs_american
和0_vrs_europe
的表,我需要在一个html表中显示这些表的行。所以我写了这段代码:
<?php
$con=mysqli_connect("localhost","aaa","bbb","my_mk7vrlist");
$result = mysqli_query($con,"SELECT 0_vrs_american.*, 0_vrs_europe.* FROM 0_vrs_american, 0_vrs_europe ORDER BY `vrs` DESC LIMIT 0 , 200");
while($row = mysqli_fetch_array($result))
{
echo "<tr>";
echo "<td>" . $x . "</td>";
echo "<td>" . $row['playername'] . "</td>";
echo "<td>" . $row['contactable'] . "</td>";
echo "<td>" . $row['vrs'] . "</td>";
echo "</tr>";
$x = $x+1;
}
mysqli_close($con);
?>
我对MySQL很新,所以我搜索了这个主题,我发现了一个类似上面你可以看到的语法。顺便说一句,我的页面没有结果,因为表格是空的。
所以:我必须在HTML表格中显示两个sql表的内容,并且必须根据vrs
(从50000到99000的数字)对行进行排序。我怎么能解决我的问题?
答案 0 :(得分:2)
上面的替代方法是从这两个表中选择所有行作为内部选择,然后在返回的结果集中按vrs
排序。
SELECT *
FROM
(
SELECT * FROM 0_vrs_american
UNION
SELECT * FROM 0_vrs_europe
) AS a
ORDER BY vrs
答案 1 :(得分:0)
首先你需要在循环之前定义$ x 然后使用像这样的查询
$result = mysqli_query($con,"SELECT 0_vrs_american.*, 0_vrs_europe.* FROM 0_vrs_american, 0_vrs_europe ORDER BY `vrs` DESC LIMIT 0 , 200") or die (__LINE__." ".mysqli_error($con));
因此您将看到错误和查询行
我只需添加or die (__LINE__." ".mysqli_error($con))
答案 2 :(得分:-1)