Olá,
Eu tenho um banco de dados MYSQL que possui 3 campos: id, perso e data: Banco de dados
Eu estou fazendo uma consulta no banco de dados que lista todas inserções do banco de dados, mas eu faço uma segunda consulta que precisa comparar a data da primeira consulta, subtrair 10 minutos, e exibir a primeira correspondência nesse critério.
Seria algo assim:
CONSULTA 1: EXIBE PERSO 1, DATA 2024-06-20 20:44:45. A partir disso, eu faço uma segunda consulta, dentro dessa, que precisa exibir a próxima correspondência considerando a data 2024-06-20 20:44:45, subtraindo 10 minutos, ou seja, se tivesse uma inserção da seguinte data 2024-06-20 20:34:45 ela deveria ser exibida.
Meu código, porém, não tem dado certo. Preciso de uma ajuda.
CONSULTA 1:
$dados = $conex->prepare("SELECT * FROM tabela ORDER BY data");
$dados->execute();
$lines = $dados->rowCount();
if ($dados->rowCount() > 0) {
foreach($dados->fetchAll(PDO::FETCH_OBJ) as $key => $linha) {
$id = $linha->id;
$perso = $linha->perso;
$data = $linha->data;
echo $id;
echo $perso;
echo $data;
$dados = $conex->prepare("SELECT * FROM tabela WHERE perso = ".$perso." AND data >= DATE_SUB('".$data."',INTERVAL 10 MINUTE) ORDER BY data DESC LIMIT 1");
$dados->execute();
$lines = $dados->rowCount();
if ($dados->rowCount() > 0) {
foreach($dados->fetchAll(PDO::FETCH_OBJ) as $key => $linha) {
$datac = $linha->data;
echo $datac;
}
}
}
}