我在其中有mySQL DB:link
我需要返回结果,其中第一个项目将是id == 1的项目,然后按字母顺序添加到其他所有项目。这就是我要的:
[Názovpredmetu],[Algoritmizáciaúloh],[Fyzika 1] ...
现在我正在使用这个:
<?php
$result = mysql_query("SELECT nazov FROM tbPredmety ORDER BY nazov ASC");
echo "<select name='subject_name'>";
while ($row = mysql_fetch_assoc($result))
{
echo "<option value = '" . $row[nazov] . "'>" . $row[nazov] . "</option>";
}
echo "</select>";
?>
最佳答案
您可以在CASE
子句中添加ORDER BY
子句:
SELECT nazov
FROM tbPredmety
ORDER BY
-- item(s) with item_id 1 will appear first
CASE WHEN item_id = 1 THEN 0 ELSE 1 END,
nazov ASC
我使用了
THEN 0 ELSE 1
,但出于您的目的,您可以使用在排序时认为前者值小于后者值的任何一对值。编辑:对于mysql,您可能需要使用
CASE ... END CASE
。如果上述方法不起作用,请尝试将END更改为END CASE。