我在搜索querys,但我无法找到一个答案,帮助我或退出类似的问题。获取最大日期范围
我需要得到,如果我想知道所有谁使 2014年2月11日的最后一次购买的卡斯特两个日期
+--------+------------+------------+
| client | amt | date |
+--------+------------+------------+
| 1 | 2440.9100 | 2014-02-05 |
| 1 | 21640.4600 | 2014-03-11 |
| 2 | 6782.5000 | 2014-03-12 |
| 2 | 1324.6600 | 2014-05-28 |
+--------+------------+------------+
之间例如上次购买的客户的信息和2014年3月16日,在这种情况下,其结果必然是
+--------+------------+------------+
| client | amt | date |
+--------+------------+------------+
| 1 | 21640.4600 | 2014-03-11 |
+--------+------------+------------+
不能是客户数2的原因有purchease于2014年5月28日, 我尽量让
SELECT MAX(date)
FROM table
GROUP BY client
但只获得所有日期的最大值, 我不知道是否存在一个函数或可以帮助的东西,谢谢。
以及我不知道如何纪念这个问题进行解决,但这项工作对我来说 完成原始查询
SELECT client, MAX(date)
FROM table
GROUP BY client
HAVING MAX(date) BETWEEN date1 AND date2
感谢所有花了一分钟,以帮助我与我的问题, 特别感谢Ollie Jones和Peter Pei Guo
@TheVedge,你是对的! – 2014-09-25 02:09:18
谢谢,但如果我这样做,会出现客户端号码2原因2014-03-12有一个日期,它不能出现在2014年5月28日原因有另一个purhcease,我需要知道谁拥有自己的客户最后一次购买的范围内,如果有一个purhcease超出范围一定不能显示,我想不是那么简单 – user3680275 2014-09-25 02:10:42
@ user3680275你试过了吗?此查询不应返回客户2,因为它仅在max(日期)上进行过滤。任何在此之前完成的购买都不会被考虑。 – ESG 2014-09-25 02:13:02