日付と時刻のリテラル に記載されているとおり :
MySQLは
DATETIME
を認識します およびTIMESTAMP
これらの形式の値:
いずれかの
'YYYY-MM-DDHH:MM:SS'
の文字列として または'YY-MM-DDHH:MM:SS'
フォーマット。ここでも「リラックスした」構文が許可されています。日付部分または時間部分の間の区切り文字として、任意の句読文字を使用できます。例:'2012-12-31 11:30:45'
、'2012 ^ 12 ^ 31 11 + 30 + 45'
、'2012/12/31 11 * 30 * 45'
、および' [email protected] @ 31 11 ^ 30 ^ 45'
同等です。
'YYYYMMDDHHMMSS'
のいずれにも区切り文字がない文字列として または'YYMMDDHHMMSS'
文字列が日付として意味をなす場合は、形式。例:'20070523091528'
および'070523091528'
'2007-05-23 09:15:28'
として解釈されます 、ただし'071122129015'
は違法であり(無意味な分の部分があります)、'0000-00-00 00:00:00'
になります 。いずれかの
YYYYMMDDHHMMSS
の数値として またはYYMMDDHHMMSS
数値が日付として意味をなす場合は、形式。例:19830905132800
および830905132800
'1983-09-05 13:28:00'
として解釈されます 。
DATETIME
またはTIMESTAMP
値には、最大マイクロ秒(6桁)の精度で末尾の秒の一部を含めることができます。この小数部分は認識されますが、DATETIME<に格納されている値から破棄されます。 / code>
またはTIMESTAMP
列。 MySQLでの分数秒のサポートについては、セクション11.3.6「フラクショナル時間値の秒数」</a> 。
'2012-08-24T17:29:11.683Z'
の日付リテラル これらの形式のいずれにも適合しません。どちらかを提案します—
-
代わりに、Node.jsDateオブジェクトの
toLocaleFormat()<を使用してください。 / code> メソッド(MySQL接続のタイムゾーンがNode.jsのロケールのタイムゾーンと一致していることを確認してください):
if s instanceof Date return s.toLocaleFormat("%Y-%m-%d %H:%M:%S")
-
Node.jsDateオブジェクトの
valueOf()を使用しますコード> 時間の値をミリ秒で取得する方法 UNIX時代以降、
1000
で除算 (秒を取得するには UNIXエポック以降)、MySQLのFROM_UNIXTIME()
機能。