Добрый день! 
Не могу понять как вернуть результат выполнения SELECT-а из callback-функции query. 
Суть в следующем: есть некий сервер на node.js который принимает POST-запросы от клиента и в соответствии с этим производит те или иные действия с базой данных mysql. С записью и апдейтом в базу разобрался - все работает. Но не могу понять как вернуть выборку по селекту из таблицы в базе. Для наглядности приведу часть кода:
function accept(req, res) {
    if (req.method == "POST") {
        var requestBody = '';
        req.on('data', function(data) {
        requestBody += data;
        });
        req.on('end', function() {
            var formData = qs.parse(requestBody);
            var login = formData.login;
//Далее нужно проверить существование записи в БД 
//и если такой нет то сделать новую запись в БД, иначе обновить существующую
            selectDB(login);
           // Здесь нужно получить результат чтобы запустить условие
            if (selectDB(login)) ...  updateDB(login,score);           
            else insertDB(login,score);
                ....
});
// И есть некая функия selectDB
function selectDB(param1) {
    var connection = mysql.createConnection({
        host     : '',
        user     : '',
        password : '',
        database : ''
    });
        connection.connect();
        connection.query(
            {sql: 'SELECT * from users where login = ?',
             values: [param1]
            },
            function(err, results, fields) {
                if (err) return err;
// console.log(results) - возвращает результат выполения запроса в БД, но return results - возвращает undefined
                return results;
            }
        );
        connection.end();
}
Как мне в function accept получить значение function selectDB?
Извиняюсь за глупый вопрос - с javascript пока на вы и многих вещей не понимаю. Полагаю connection.query вернет некий объект, но я смотрел его вывод в консоли node.js и не обнаружил в нем метода, который возвращает результат callback-функции.