suchen

Heim  >  Fragen und Antworten  >  Hauptteil

Problem mit MySQL beim Abrufen der Zeitfunktion unix_timestamp?

Verwenden Sie MySQL, um die Millisekunden des aktuellen Datums abzurufen. Wenn das Datum zu groß ist, wird es nicht abgerufen.

SELECT unix_timestamp('2037-08-26 14:07:57')

SELECT unix_timestamp('2067-05-26 14:07:57')

Ich habe das Jahr von 37 auf 67 geändert und die Ausgabe wurde 0.

Ich habe eine SQL-Anweisung, die Zeitfelder vergleichen muss (auf Sekunden genau). Der Schlüsselcode lautet wie folgt:

unix_timestamp( time ) between unix_timestamp( 'start ') and unix_timestamp( 'end' )

Persönlich denke ich, dass das Zeitlimit größer sein sollte, aber aufgrund von MySQL-Einschränkungen darf die maximale Zeit 2038 nicht überschreiten,

Entschuldigung, gibt es einen besseren Weg, dieses Problem zu lösen? Bitte geben Sie mir einen Rat? Vielen Dank...

某草草某草草2788 Tage vor789

Antworte allen(2)Ich werde antworten

  • 伊谢尔伦

    伊谢尔伦2017-05-27 17:41:04

    INT型最大值是:2147483647(有符号)

    用最大值转换为时间是:2038/1/19 11:14:7

    你输入2067-05-26 14:07:57

    你想让Mysql怎么回应你??

    从INT型来讲,时间戳用到2038/1/19 11:14:7 就会用完了...不过到那时候应该就有新的时间戳记数方式吧..

    Antwort
    0
  • 仅有的幸福

    仅有的幸福2017-05-27 17:41:04

    因此最多只能到2038年…

    https://en.m.wikipedia.org/wi...

    Antwort
    0
  • StornierenAntwort