function get_info() { var temp; con.connect(function (err) { if (err) throw err; con.query("SELECT * FROM customers", function (err, result, fields) { if (err) throw err; temp = result; console.log(temp); }); }); console.log(temp); } cuando ejecuto la función, el console.log(temp) al final de la función muestra "indefinido" aunque muestra los datos cuando hago console.log(temp) en la función interna. Creo que el problema es que la variable global no cambia, pero no sé cómo solucionarlo. ¿Algunas ideas?