sql >> Databáze >  >> RDS >> Mysql

Sloučení řádků výsledků node-mysql do jediného návratu JSON pro node.js

Zeptal se a odpověděl.

Nástroj Async.js má spoustu dobrých věcí včetně funkce map a underscores.js pomáhá cokoli uklidit!

app.get('/viewing/:id', function (req, res){
  if(!req.cookies.user) {
      res.end('Requires Authenticated User');
  }
  else {
     connection.query('SELECT something,somethingelse from mytable where userId = ?',[req.params.id], function (error, rows, fields) {
        async.map(rows, getUsers, function(err, results){
        res.writeHead(200, {'Content-Type': 'text/plain'});
        res.end(JSON.stringify(_.flatten(_.compact(results))));
         });
     });
  }
});

function getUsers(user, callback) {
    connection.query('SELECT id,firstName,lastName FROM users WHERE id = '+ user.otherId,  function(err, info) {
        if(err) {
            console.log(err);
            return callback(err);
        }
        else {
           return callback(null, info);
        }
    });

}




  1. Zkombinujte dvě tabulky do nové, takže vybrané řádky z druhé tabulky budou ignorovány

  2. Získejte čas a čas pomocí T-SQL?

  3. (+) syntaxe pro vnější spojení v mysql

  4. Pomocí select do lokální proměnné a připraveného příkazu v mysql