2016-03-19 7 views
3

私は、mysql、express、htmlと一緒にNode.jsを使用しています。node.jsの日付の形式を制限する

データベースから結果を取得しているときに、mysqlの型が日付であっても、 2016-03-16T00:00:00.000Zの日付を取得します。

マイクエリ:

app.get('/list', function (req,res) { 
    connection.query('SELECT `ondate`,`projectname`,`hours` FROM `entries` WHERE YEARWEEK(`ondate`, 1) = YEARWEEK(CURDATE(), 1) ORDER BY ondate DESC ,projectname ASC ', function(err, rows, fields) { 
    res.json({error: err, result: rows}); 
    }); 
}) 

は、私は時間を無視するondateフィールドを設定することができます方法はありますか?

+0

はmysqlドライバーを使用していますか? –

答えて

3

これを使用して...不要なフォーマットが導入されている場所を正確に知っているが、後処理行の一部としてそれを削除するオプションであるかもしれないハード:

SELECT 
DATE_FORMAT(`ondate`,'%m-%d-%Y'), 
`projectname`, 
`hours` 
FROM `entries` 
WHERE YEARWEEK(`ondate`, 1) = YEARWEEK(CURDATE(), 1) 
ORDER BY ondate DESC, projectname ASC; 

必要なものに日付形式を調整します。

よろしく

+0

優秀!これは私が必要なものです –

2

// Assuming array of rows takes shape something like this... 
 
var rows = [{ondate:'2012-01-02T00:00:00.000Z'},{ondate:'2013-01-02T00:00:00.000Z'},{ondate:'2012-03-02T00:00:00.000Z'}]; 
 

 
// map rows to show only first ten chars of `ondate` field 
 
rows = rows.map(function(item){ return item.ondate.slice(0,10); }); 
 

 
// business as usual... 
 
alert(rows); 
 
//-> 2012-01-02,2013-01-02,2012-03-02