31 lines
893 B
JavaScript
31 lines
893 B
JavaScript
import pg from 'pg';
|
|
|
|
const pool = new pg.Pool({
|
|
connectionString: 'postgresql://edumanager:EduManager2026!Seguro@150.230.87.131:5432/edumanager'
|
|
});
|
|
|
|
async function run() {
|
|
try {
|
|
console.log('Buscando presenças com fotos na tabela frequencias...');
|
|
const { rows } = await pool.query(
|
|
`SELECT f.aluno_id, a.nome, count(*) as total, array_agg(f.data ORDER BY f.data ASC) as datas
|
|
FROM frequencias f
|
|
JOIN alunos a ON f.aluno_id = a.id
|
|
WHERE f.foto IS NOT NULL AND f.foto <> ''
|
|
GROUP BY f.aluno_id, a.nome`
|
|
);
|
|
|
|
console.log(`Encontrados ${rows.length} alunos com fotos de presenças.`);
|
|
rows.forEach(r => {
|
|
console.log(`Aluno: ${r.nome} (ID: ${r.aluno_id}) | Total Presenças com Foto: ${r.total} | Datas: ${r.datas.join(', ')}`);
|
|
});
|
|
|
|
} catch (err) {
|
|
console.error(err);
|
|
} finally {
|
|
await pool.end();
|
|
}
|
|
}
|
|
|
|
run();
|