这个问题在这里已经有答案了:
mysql按2列排序(2个答案)
两年前关门了。
有什么方法可以让我改变这个mysql语句吗
$query = "SELECT Monsters.ID AS `mID`,
Monsters.Name AS `MName`, Monsters.MonsterType_ID,
MonsterType.Name FROM Monsters ";
$query .= "inner join MonsterType ON Monsters.MonsterType_ID = MonsterType.ID
ORDER BY MonsterType.Name ASC";
$result = $mysqli->query($query);
if ($result && $result->num_rows > 0) {
echo "<div class='row'>";
echo "<center>";
echo "<h2>The Monster Database</h2>";
echo "<table>";
echo "<tr><th>Name</th><th>Type</th>
<th></th><th></th></tr>";
while ($row = $result->fetch_assoc()) {
echo "<tr>";
//Output FirstName and LastName
echo "<td>" .$row["MName"]."</td>";
echo "<td>" .$row["Name"]."</td>";
这样,这个图像怪物数据库的名称和类型是按类型排序的,但是与该类型相关联的怪物名称也是按字母顺序排列的?所以对于野兽类型,它会被列为
Boar Beast
Grizzly Bear Beast
Panther Beast
Polar Bear Beast
Titanoboa Beast
Wolf Beast
谢谢您!
编辑:解决方案是monstertype.name asc,mname asc。谢谢大家!
2条答案
按热度按时间cuxqih211#
这应该起作用:
ovfsdjhp2#
更改您的order by语句以在怪物类型后包含怪物名称。