Contador de visitas, por período
Olá prezados, andei pesquisando aqui no fórum e não encontrei nada aqui referente ao que eu quero, então decidi postar, para que os amigos pudessem me ajudar.
Então, estou criando um sistema de contador de visitas e a tabela é a seguinte:
CREATE TABLE IF NOT EXISTS `go_siteviews` (
`siteviews_id` int(11) NOT NULL AUTO_INCREMENT,
`siteviews_date` date NOT NULL,
`siteviews_users` decimal(10,0) NOT NULL,
`siteviews_views` decimal(10,0) NOT NULL,
`siteviews_pages` decimal(10,0) NOT NULL,
`online_ip` varchar(255) DEFAULT NULL,
PRIMARY KEY (`siteviews_id`),
KEY `idx_1` (`siteviews_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=117 ;
Aqui vai os registros que estão inseridos nessa tabela:
INSERT INTO ws_siteviews (siteviews_id, siteviews_date, siteviews_users, siteviews_views, siteviews_pages, online_ip) VALUES
(113, '2016-09-18', '247', '991', '1724', '66.249.64.175'),
(114, '2016-09-19', '204', '908', '1609', '179.124.16.8'),
(115, '2016-09-20', '145', '713', '1291', '187.21.233.154'),
(116, '2016-09-21', '279', '1109', '1935', '187.37.94.13');
Sendo que o campo siteviews_views é o campo que eu estou fazendo a contagem de visitas total do site.
E agora eu quero fazer a contagem pegando pelos ultimos 3 meses, tipo:
Junho | Julho e Agosto
Quero que me retorne apenas as visitas total referente a cada data, amigos, não tem só esse registro na tabela, tenho muitos registros, esses registros é apenas pra mostrar como está.
Então, eu queria uma solução via SQL, para retornar as visitas referente a cada data.
Utilizo meus códigos PHP dessa forma:
$read = new Read;
$read->FullRead("SELECT SUM(siteviews_views) AS views FROM ws_siteviews WHERE siteviews_date = CURDATE()");
$Hoje = $read->getResult()[0]->views;
$read->FullRead("SELECT SUM(siteviews_views) AS views FROM ws_siteviews WHERE siteviews_date BETWEEN DATE_FORMAT(CURDATE(), '%Y-%m-01') AND LAST_DAY(CURDATE())");
$Mes = $read->getResult()[0]->views;
$read->FullRead("SELECT SUM(siteviews_views) AS views FROM ws_siteviews WHERE siteviews_date BETWEEN DATE_FORMAT(CURDATE(), '%Y-01-01') AND DATE_FORMAT(CURDATE(), '%Y-12-31')");
$Ano = $read->getResult()[0]->views;
Agradecimentos,
Alisson Maciel
Discussão (4)
Carregando comentários...