javascript - Nodejs mysql 获取正确的时间戳格式

标签 javascript node.js

我正在使用 mysqljssql 获得结果后,我得到了不同的 TimeStamp 格式,如下所示:

created_at: Sat Jul 16 2016 23:52:54 GMT+0430 (IRDT)

但它在 mysql 上是:

2016-07-16 23:52:54

我想得到那个,而不是其他格式,我如何在 mysql 连接或 sql 命令上设置这种格式?

var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'a',
    database: 'signal'
});

connection.query(command, function (err, rows) {
    if (err) throw err;
    console.log(rows);
});

最佳答案

我建议处理行而不是尝试更改 MySQL 输出结果。这样您的数据库将拥有有关 created_date 的详细完整数据。而客户端(其他功能、系统、项目等)将从数据库中检索到的值格式化为他们需要的任何格式。此外,您将通过您的系统保持一致的日期返回结果。无论执行什么数据库查询,您的软件都将始终期望返回相同的格式。

这里有一个 ES6 的例子,同样使用 moment.js 库来简化你将要进行的任何日期操作,强烈推荐使用这个库。

const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'a',
    database: 'signal'
});

function formatDate(date) {
  return moment(date).format('YYYY-MM-DD HH:mm:ss');
}

connection.query(command, (err, rows) => {
    if (err) {
      throw err;
    }

    rows = rows.map(row => ({
      ...row,
      created_date: formatDate(row.created_date)
    }));

    console.log(rows);
});

更新 或在 ES5 中

var connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'a',
    database: 'signal'
});

function formatDate(date) {
  return moment(date).format('YYYY-MM-DD HH:mm:ss');
}

connection.query(command, function(err, rows) {
    if (err) {
      throw err;
    }

    rows = rows.map(function(row) {
      return Object.assign({}, row, { created_date: formatDate(row.created_date) });
    });

    console.log(rows);
});

关于javascript - Nodejs mysql 获取正确的时间戳格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38422524/

相关文章:

javascript - 如何将 PHP 代码放入 JavaScript 中?

javascript - 我如何在 Angular 中访问这个 rootScope?

javascript - 有什么方法可以在剑道网格自定义弹出模板中设置默认值?

javascript - 将 TensorFlow 中的张量值转换为常规 Javascript 数组

mysql - 在 Nodejs 中编写原始 sql 查询是一个好习惯吗?

node.js - 渲染附加到同一 block 的多个子模板

javascript - Jquery - 编辑对象参数

javascript - Mongoose :使用钩子(Hook)/中间件来删除引用的对象(有很多)

node.js - 如何使用 node-inspector 调试 nodeunit

javascript - javascript 中的异步 foreach,步长为 n