MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQL UNIX_TIMESTAMP関数に引数として渡すことができる日時値の範囲はどれくらいですか?


MySQL UNIX_TIMESTAMP関数に引数として渡すことができる日時値の範囲は、TIMESTAMPデータ型の範囲と同じです。つまり、「1970-01-0100:00:01」から「2038-01-1908」までです。 44:07'。 UNIX_TIMESTAMP関数でTIMESTAMPの範囲を超えるまたは下回る日時値を指定すると、MySQLは出力として0を返します。次の例の助けを借りて理解することができます-

mysql> select UNIX_TIMESTAMP('2038-01-19 08:44:07');
+---------------------------------------+
| UNIX_TIMESTAMP('2038-01-19 08:44:07') |
+---------------------------------------+
| 2147483647                            |
+---------------------------------------+
1 row in set (0.00 sec)

mysql> select UNIX_TIMESTAMP('2038-01-19 08:44:08');
+---------------------------------------+
| UNIX_TIMESTAMP('2038-01-19 08:44:08') |
+---------------------------------------+
|                                   0   |
+---------------------------------------+
1 row in set (0.00 sec)

mysql> select UNIX_TIMESTAMP('1969-01-01 05:10:00');
+---------------------------------------+
| UNIX_TIMESTAMP('1969-01-01 05:10:00') |
+---------------------------------------+
|                                    0  |
+---------------------------------------+
1 row in set (0.00 sec)

  1. INTERVAL()関数の最初の引数がNULLの場合、MySQLは何を返しますか?

    MySQLは、INTERVAL()関数の最初の引数がNULLの場合、出力として-1を返します。次の例はそれを示します- mysql> Select INTERVAL(NULL,20,32,38,40,50,55); +--------------------------------------+ | INTERVAL(NULL,20,32,38,40,50,55)     | +--------------------------------------+ | -1               &n

  2. MySQL DECIMAL(x、0)の範囲はどのくらいですか?

    DECIMALデータ型の範囲は、INTEGERデータ型およびBIGINTを超えています。 BIGINTは18446744073709551615を格納できますが、DECIMALではDECIMAL(65,0)を格納できます。ここで、xは65ナイン(9)を表します。 DECIMALは数値をバイト単位で格納し、ストレージ要件の式は次のとおりです。DECIMAL(x、0)つまり StorageRequirementInBytes = (x/9) + remaining; WHERE remaining = round_up( (x%9) / 2 ) DECIMAL(65,0)ストレージは次のとおりで