[英]MySQL group by value and max date
我需要提取result_1和result_2列的最后一个字符并将它们分组,所以我有一个从0到9的列表,指示何时生成。 在下面的代码中,我设法获得了一个从0到9的列表,但是日期是表中最早的日期,而不是最晚的日期。
$sql = "SELECT * FROM ((SELECT RIGHT(result_1, 1) AS results, date
FROM act_results ORDER BY date ASC)
UNION ALL (SELECT RIGHT(result_2, 1) AS results, date
FROM act_results)) s WHERE results != ''";
$sql .= " GROUP BY results";
$table = mysql_query($sql);
while ($row = mysql_fetch_array($table)) {
echo $row['results']." (".$row['date'].") <br>";
}
任何想法如何解决? 提前致谢。
group by
max()
使用group by
:
SELECT results, max(date)
FROM ((SELECT RIGHT(result_1, 1) AS results, date
FROM act_results
) UNION ALL
(SELECT RIGHT(result_2, 1) AS results, date
FROM act_results
)
) s
WHERE results <> ''
GROUP BY results;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.