NodeJS change MySQL column name when displaying data

Rizal :

I am creating an API using NodeJS+Express that display a bunch of data from MySQL. The real column name in MySQL is user_id, user_salary. But I don't want it to be appear on screen, so I want to change to something like (user_id -> ID, user_salary-> SAL, so in JSON format, my data it will be:

{"status":200,"response":"SUCCESS","data":[{"ID":"OV100","SAL":100000},{"ID":"OV1000","SAL":1000000},{"ID":"OV150","SAL":150000}]}

I have googling about this but no luck. Thank you for your help.

cubrr :

You can either do this in SQL, in JS over at your backend, or even in your frontend.

Do it in SQL

Use AS.

const sql = 'select user_id as "ID", user_salary as "SAL" from salary';

Do it in JS

Use Array.map.

conn.query(sql, (err, results) => {
    if(results.length)
        res.end(JSON.stringify({
          "status": 200, 
          "response": 'SUCCESS',
          "data": results.map(({ user_id, user_salary }) => ({
            ID: user_id,
            SAL: user_salary
          }))
        }));
})

Guess you like

Origin http://43.154.161.224:23101/article/api/json?id=297869&siteId=1