这种情况可能有一个简单的解决方案,但我无法理解......
我有一个分析仪表板,根据年份,季度(1-4)显示折线图中的指标
我需要在数据库中获取最后8条最新记录。简单,按年份排序,季度限制为0,8。但是我需要在最早的一年,第一季度从左到右显示它。所以实际上反过来,不是从最新到最旧。所以我需要这样的东西:
2011 - Quarter 2
2011 - Quarter 3
2011 - Quarter 4
2012 - Quarter 1
2012 - Quarter 2
2012 - Quarter 3
2012 - Quarter 4
2013 - Quarter 1 (Which is the last added record)
我只是根据年份DESC查询它,四分之一ASC然后只是反转输出。我将使用for循环并将$i
设置为8
,$i > 0
,$i--
,然后从最后一条记录增加到第一条记录。问题是我不知道如何获得行号。
简而言之,我需要查询最新到最旧,但输出最旧到最新。所以,这不是一个SQL查询问题,一个使用mysql的输出问题。
答案 0 :(得分:1)
使用子查询,例如:
SELECT * FROM Revenue WHERE id IN
(SELECT id FROM Revenue WHERE ... youc criteria ... ORDER BY ... criteria order ...)
ORDER BY ... display order ...
答案 1 :(得分:0)
以下是答案:
$results = mysql_query($strQuery) or die(mysql_error());
while ($row = array_reverse(mysql_fetch_array($results))) {
echo $row['something'];
}