J'essaie de pousser les résultats d'une requête SQL dans un tableau. Cependant, cela ne semble pas fonctionner. Je ne trouve pas de solution en ligne. Si quelqu'un peut m'aider à résoudre ce problème, je lui en serais très reconnaissant.
let data = []; connection.query("SELECT DISTINCT referer FROM publisher", (error, results) => { if (error) { console.log(error); } else { results.forEach(async (result) => { let referer = result.referer; let today = new Date(); for (let i = 0; i < 24; i++) { let hour = i; let start = new Date(today); start.setHours(hour, 0, 0, 0); let end = new Date(today); end.setHours(hour, 59, 59, 999); connection.query("SELECT COUNT(*) AS count FROM publisher WHERE referer = ? AND first_seen >= ? AND first_seen <= ?", [referer, start, end], (error, results) => { if (error) { console.log(error); } else { let count = results[0].count; data.push({ referer: referer, hour: hour, count: count }); } }); } }); } });
Vous pouvez essayer d'obtenir des données de MySql DB en utilisant une seule requête
Cela élimine les méthodes asynchrones internes dans le code js.