【发布时间】:2015-02-11 21:50:39
【问题描述】:
我已将数据库“排序”为按国家升序排列,然后是年份降序排列。每个数据库记录包含:国家名称、年份、详细信息。有很多重复的国家,但年份不同。例如:
Albania, 2000, details
Albania, 1965, details
Croatia, 2014, details
Croatia, 2003, details
无法弄清楚如何回显数组以获得如下结果,其中国家在一行中,年份和详细信息在下面列出,而不重复国家名称:
Albania
2000, details
1965, details
Croatia
2014, details
2003, details
似乎我需要针对每个不同的国家、回声年份和详细信息?
到目前为止,这是我的 php:
$result = mysql_query("SELECT country, year, details FROM studies ORDER BY country, year DESC ");
//output data from each row in db
while($row = mysql_fetch_array($result)) {
echo " Country: " .$row['country']. "<br /> Year: " .$row['year']. " Details: ".$row['details']. "<br /><br /> ";
}
不胜感激,我很难过!
【问题讨论】:
-
以后高亮代码块,按ctrl+k,就会格式化成代码。
-
GROUP BY country应该这样做。 -
@Fred-ii-,GROUP BY 还不够; OP 需要按照描述格式化其输出。
-
也许使用嵌套的while循环?首先获取不同的国家/地区名称,显示该值,然后在遍历国家/地区名称时,提取每个国家/地区的年份和其他详细信息?
标签: php mysql arrays database key-value