2016-10-13 108 views
-1

我有一个记录奇怪的问题。 我每天都有一些行。 我在整个月中选择一天中的最后一条记录。一个月中每天发生的最后一笔记录

表是这样的:

|name |surname|date_in   | 
|mario|rossi |2016-01-01 00:12:12 
|mario|rossi |2016-01-01 00:14:12 
|mario|rossi |2016-01-01 00:16:12 
|mario|rossi |2016-01-01 00:18:12 
|mario|rossi |2016-01-01 00:22:12 
|mario|rossi |2016-01-02 00:12:12 
|mario|rossi |2016-01-02 00:14:12 
|mario|rossi |2016-01-02 00:16:12 
|mario|rossi |2016-01-02 00:18:12 
|mario|rossi |2016-01-02 00:22:12 

我的查询是这样的:

SELECT name,surname,date_in 
FROM table 
    INNER JOIN 
    (
    SELECT MAX(date_in) AS maxim FROM table 
      GROUP BY date(date_in) 
    ) tableformax 
    on table.date_in = tableformax.maxim 
    WHERE 
    date_in > 2016-01-01 AND date_in < 2016-01-30 

我得到正确的每一天的最后一排,但查询忽略了2016年1月7日。

如果我使用MIN,我得到了一整天

任何想法?

+0

请参阅http://meta.stackoverflow.com/questions/333952/why-should-i-provide-an-mcve-for-what-seems-to-me-to-be-a-very-simple- sql-query – Strawberry

+1

你不需要在你的日期有抽搐吗?是date_in与2016-01-10进行数学比较2005?显示此日期2016-01-07 – xQbert

+0

中的一条(或几条)记录我插入了一些记录 – MarioProject

回答

0

SELECT姓名,日期(date_in)date_in_date,最大值(date_in)date_in_max FROM表 WHERE日期(date_in)> = '2016年1月1日' 和日期(date_in)< =“2016-01- 31' group by date(date_in);

请尝试以下查询,我相信它是一个月度范围。

+0

谢谢谢谢谢谢!!!! – MarioProject

相关问题