【问题标题】:Outputing an database result in reverse反向输出数据库结果
【发布时间】:2012-10-19 15:31:12
【问题描述】:

这种情况可能有一个简单的解决方案,但我就是想不通......

我有一个分析仪表板,它根据年、季度 (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 Query 问题,而是使用 mysql 的输出问题。

【问题讨论】:

  • 不知道我应该这样做,我不知道那在哪里。

标签: php


【解决方案1】:

使用子查询,例如:

SELECT * FROM Revenue WHERE id IN 
  (SELECT id FROM Revenue WHERE ... youc criteria ... ORDER BY ... criteria order ...) 
  ORDER BY ... display order ...

【讨论】:

  • 这是答案:$results = mysql_query($strQuery) 或 die(mysql_error()); while ($row = array_reverse(mysql_fetch_array($results))) { echo $row['something']; }
【解决方案2】:

答案如下:

$results = mysql_query($strQuery) or die(mysql_error()); 

while ($row = array_reverse(mysql_fetch_array($results))) { 

echo $row['something']; 

}

【讨论】:

    猜你喜欢
    • 2018-05-02
    • 1970-01-01
    • 2013-10-22
    • 2023-03-16
    • 1970-01-01
    • 1970-01-01
    • 2019-07-26
    • 2013-01-13
    • 2012-05-13
    相关资源
    最近更新 更多