在查询中,我按名称(按字母顺序)排序,将查询粘贴在$ res中,然后循环结果。
while($rs = mysql_fetch_assoc($res)){
echo $rs['name'];
}
现在,在while循环中有一个“网站管理员”名称。我需要使用“网站管理员”并将其放在循环的最后(因此它最后回显)或将“网站管理员/联盟计划网站”放在$ res中(在查询结束之前点击while循环。
答案 0 :(得分:0)
最简单的方法是编辑您的查询并更改订单:
ORDER BY
name
到
ORDER BY
IF(name LIKE 'webmaster',1,0),
name
注意:这个IF
是mysql语法 - 你没有发布你正在使用的数据库。在postgres上它会是(不是100%肯定):
ORDER BY
CASE WHEN name ILIKE 'webmaster' THEN 1 ELSE 0 ,
name
编辑解释一下:通过这种方式更改订单,就像在名称为“网站管理员”或{{1}的情况下为包含1
的订单添加其他列在所有其他情况下。首先通过这个“专栏”排序,“网站管理员”总是在最后(或者:所有“网站管理员” - 如果有不止一个)
答案 1 :(得分:0)
也许是这样的:
$webmasterArray = array();
while($rs = mysql_fetch_assoc($res))
{
if($rs['name'] == "webmaster")
$webmasterArray = $rs;
else
echo $rs['name'];
}
if($webmasterArray)
echo $webmasterArray['name'];