我想用一个给定的值以降序递增$count
。如果给定的值具有相同的数字,$count将停止递增,如果下一个值不同,则开始递增。也许我在这里解释不清楚。看看我的代码,你就会看到并理解我正在努力实现的目标。
<?php
$count=1;
if(current $row['perc']==next $row['perc'])//
{
echo "";//stop incrementing and output the same count. Because current perc and next perc have the same value, I don't know how to make echo here.
}
else
{
echo $count++; //start incrementing
}
?>
我想取得这样的成绩
id position
`101 1`
`102 2`
`103 2'
我正试图根据从数据库中提取的值来计算位置。如果两个值具有相同的perc
,则它们将具有相同的位置。
如果我理解正确,你可以在MySql中用这样的查询来完成
SELECT id, position
FROM
(
SELECT id, IF(@p = perc, @n , @n := @n + 1) position, @p := perc
FROM Table1 t, (SELECT @n := 0, @p := 0) n
ORDER BY perc DESC
) q
这是SQLFiddle演示