我遇到查询问题,我试图使用max(DATE)过滤掉所有重复的行。
我的查询如下 -
$sql = "select COND_CODE,COUNT(*) as COUNT, COND_CODE, MAX(DATE) from downgrades
WHERE (
SELECT MAX(DATE) BETWEEN '15/05/2014 05:19' AND '30/05/2014 12:34' from downgrades)
GROUP BY COND_CODE";
查询正在提取数据,但它实际给出的唯一结果是表格中的最后一个日期。
COND_CODE DATE
SW 21/05/2014 07:57
SW 21/05/2014 07:59
SW 22/05/2014 09:05
SW 22/05/2014 09:06
SM 27/05/2014 06:49
SM 27/05/2014 06:49
SM 30/05/2014 05:18
上面的查询只会给出一个结果 - SM 30/05/2014 05:18。
我需要它通过过滤最新日期来显示每个COND_CODE的最新结果。
理想情况下,我会得到SM 30/05/2014 05:18& SW 22/05/2014 09:06
希望这是有道理的,
由于
答案 0 :(得分:-1)
喜欢这个吗?
SELECT COND_CODE,COUNT(*) as COUNT, COND_CODE, MAX(DATE)
FROM downgrades
GROUP BY COND_CODE
HAVING MAX(DATE) BETWEEN '15/05/2014 05:19' AND '30/05/2014 12:34'