Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Avatar do usuário
ADMIN
ADMIN
Tópico Autor
Mensagens: 17680
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

Consulta por período ou intervalo um dia, uma semana, um mês MySQL

24-01-2017 21:24

Nesse post vou mostrar como fazer um select por período. Tudo em uma só query.

Essa query será baseada em uma coluna do tipo datetime.

Com esse script você poderá retornar quantos registros ou cadastros tiverem no intervalo de um dia, uma semana ou um mês.

A conexão da consulta é feita com MySQLi.


<?php define("SERVIDOR", "localhost"); define("USUARIO", ""); define("SENHA", ""); define("BANCODEDADOS", ""); $conecta = new mysqli(SERVIDOR, USUARIO, SENHA, BANCODEDADOS); // CONECTA if ($conecta->connect_error) { trigger_error("ERRO NA CONEXÃO: "  . $conecta->connect_error, E_USER_ERROR); } // PODE SER SEPARADO O TRECHO ACIMA PARA SER CHAMADO POR INCLUDE $sql = "SELECT (SELECT COUNT(*) FROM tabela WHERE coluna_da_data >= DATE_SUB(CURRENT_DATE(), INTERVAL 1 DAY)) AS total_dia, (SELECT COUNT(*) FROM tabela WHERE coluna_da_data >= DATE_SUB(CURRENT_DATE(), INTERVAL 7 DAY)) AS total_semana, (SELECT COUNT(*) FROM tabela WHERE coluna_da_data >= DATE_SUB(CURRENT_DATE(), INTERVAL 30 DAY)) AS total_mes"; // CONSULTA $query = $conecta->query($sql); // RODA A CONSULTA $linhas = $query->num_rows; if($linhas >= 1) { // SE HÁ LINHAS while($colunas = $query->fetch_assoc()) { echo "Hoje: {$colunas["total_dia"]}<br />"; echo "Semana: {$colunas["total_semana"]}<br />"; echo "30 dias: {$colunas["total_mes"]}<br />"; } $query->free(); // LIBERANDO OS DADOS DA CONSULTA } else { echo "Não há resultados"; // SEM RESULTADOS } $conecta->close(); // FECHANDO A CONEXÃO ?>

0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado