¿Cuál es la diferencia entre la programación síncrona y asíncrona (en node.js)

He estado leyendonodebeginner Y me encontré con los siguientes dos códigos.

El primero:

    var result = database.query("SELECT * FROM hugetable");
    console.log("Hello World");

El segundo:

    database.query("SELECT * FROM hugetable", function(rows) {
       var result = rows;
    });
    console.log("Hello World");

Obtengo lo que se supone que deben hacer, consultan la base de datos para recuperar la respuesta a la consulta. Y entoncesconsole.log('Hello world').

El primero es supuestamente código síncrono. Y el segundo es el código asíncrono.

La diferencia entre las dos piezas es muy vaga para mí. ¿Cuál sería la salida?

Googlear en la programación asíncrona tampoco me ayudó.

Respuestas a la pregunta(8)

Su respuesta a la pregunta