2011-10-26 21 views
0
id | num | text 
1 | a | sdfsdf 
2 | a | sdfsdf 
3 | b | sdfsdf 
4 | c | sdfsdf 
5 | a | sdfsdf 
6 | b | sdfsdf 
7 | a | sdfsdf 
8 | c | sdfsdf 

我做的查詢,其中NUM =一個和排序依據ID DESC和我有:自己的計數器

id | num | text 
7 | a | sdfsdf 
5 | a | sdfsdf 
2 | a | sdfsdf 
1 | a | sdfsdf 

我想添加它自己的計數器:

count | id | num | text 
    4 | 7 | a | sdfsdf 
    3 | 5 | a | sdfsdf 
    2 | 2 | a | sdfsdf 
    1 | 1 | a | sdfsdf 

我使用foreach PHP獲取數據:

foreach ($data as $i => $dat) { 
    echo $dat->id . $dat->num . $dat->text; 
} 

我想出頭:

foreach ($data as $i => $dat) { 
    echo $i . $dat->id . $dat->num . $dat->text; 
} 

但是$ i的相反方向

+0

您可以隨時從總數中減去其獲得的'$ i'相反:'$ OPP =計數($數據) - $ i' – Teneff

回答

3

你可以這樣做:

$count = count($data); 
foreach ($data as $i => $dat) { 
    echo ($count - $i) . $dat->id . $dat->num . $dat->text; 
} 
+0

更好地解決他們的問題。 +1做得好。 –

2

在PHP:

$i = count($data); 
foreach ($data as $dat) { 
    echo $i . $dat->id . $dat->num . $dat->text; 
    $i--; 
} 
2

你知道,你可以在你的SQL查詢中解決這個問題。這是一個樣本,其對生產管理平臺數據庫實例(MySQL的)一然:

select @curRow := @curRow + 1 AS row_number, issues.* 
from issues, (SELECT @curRow := 0) r 
where project_id = 7 
and tracker_id = 3 
order by 1 desc