0

我需要将第一个选定的项目放入列表中,然后将其余的按 id 顺序排列。

我的桌子:

id:1 car: fiat
id:2 car:ford
id:3 car:vw
id:4 car:toyota

.com/index.php?car=fiat 中的问题

$car = $_GET['car'];
$results = mysqli_query($connecDB,"select * from products order by (case id when 999 then 0 else 1 end), car asc");

和身体

while($row = mysqli_fetch_array($results )){
echo '
    <div id="'.$row["car"].'"></div>
';
}

例如:
如果我得到值 3:
ID
3
1
2
4
5

如果我得到值 4:
ID
4
1
2
3
5

我不知道将变量 $car 放在哪里才能正常工作。
谢谢,我为我的英语道歉。

4

1 回答 1

2

如果 ID 是数字并且总是 >0,这将起作用(我保留了原始查询中的括号;注意它们是可选的):

select *
from products
order by (case id when 3 then 0 else id end), car asc

如果 ID 可以有负值,那么这样的事情会更安全:

select *
from products
order by (case id when 3 then 0 else 1 end), id, car asc
于 2013-06-27T14:15:17.703 回答