Jump to content

SQL, GroupBy, Unix timestamps...


StrangeWill

Recommended Posts

So I have a table that looks like this:

 

+-------+---------+-----+-----+
| pageid| time    | text| title |
+-------+---------+-----+-----+
| 1     | 100     | text| old
+-------+---------+-----+-----+
|  2    | 200     | text|  none
+-------+---------+-----+-----+
|  1    | 300     | text| new
+-------+---------+-----+-----+

 

I do a group by pageID, but when I do an order by time, the last updated page is page two.

 

Any ideas on how I can group it, get the title for the first entry, but the time for the most recent? Or should I store the most recent entry time?

 

This is my SQL:

SELECT * FROM `pages`
GROUP BY `pages`.`pageid`
ORDER BY `pages`.`time` DESC

 

What I want returned:

+-------+---------+-----+-----+
| pageid| time    | text| title |
+-------+---------+-----+-----+
| 1     | 300     | text| old
+-------+---------+-----+-----+
|  2    | 200     | text| none
+-------+---------+-----+-----+

 

What I get returned:

+-------+---------+-----+-----+
| pageid| time    | text| title |
+-------+---------+-----+-----+
| 1     | 100     | text| old
+-------+---------+-----+-----+
|  2    | 200     | text| none
+-------+---------+-----+-----+

Link to comment
https://forums.phpfreaks.com/topic/126024-sql-groupby-unix-timestamps/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.