in order to display counts for items per month and year
SELECT YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created)), COUNT(user_notifications.created) FROM user_notifications WHERE `user_id` = 17 GROUP BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created)) ORDER BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created))
to make it looks better
SELECT YEAR(FROM_UNIXTIME(user_notifications.created)) as year, MONTH(FROM_UNIXTIME(user_notifications.created)) as month, COUNT(user_notifications.created) as count FROM user_notifications WHERE `user_id` = 17 GROUP BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created)) ORDER BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created))
to list all items according to year and month
SELECT YEAR(FROM_UNIXTIME(user_notifications.created)) as year, MONTH(FROM_UNIXTIME(user_notifications.created)) as month, user_notifications.* FROM user_notifications WHERE `user_id` = 17 ORDER BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created))
to filter results by year or by month you can write the following query
SELECT YEAR(FROM_UNIXTIME(user_notifications.created)) as year, MONTH(FROM_UNIXTIME(user_notifications.created)) as month, user_notifications.* FROM user_notifications WHERE `user_id` = 17 and YEAR(FROM_UNIXTIME(user_notifications.created)) = 2022 and MONTH(FROM_UNIXTIME(user_notifications.created)) = 4 ORDER BY YEAR(FROM_UNIXTIME(user_notifications.created)), MONTH(FROM_UNIXTIME(user_notifications.created))




Leave a Reply