100 равно 1 минуте SQL - PullRequest
       2

100 равно 1 минуте SQL

0 голосов
/ 30 мая 2020

Моя база данных:

База данных

Когда мне нужно, чтобы время окончания было + 10 секунд, я выполняю:

INSERT INTO `record` (`End_Time`) VALUES (now() + 10);

Результат:

Результат 1

Когда мне нужно, чтобы время окончания было +10 минут, я выполняю:

INSERT INTO `record` (`End_Time`) VALUES (now() + 600);

Результат:

Результат 2

С этого момента добавлено только 6 минут, а не 10!

Означает ли это согласно SQL 100 секунд равно 1 минуте? (Если да, это вызовет большую путаницу)

Результат:

1 Ответ

1 голос
/ 30 мая 2020

Вы используете неправильный синтаксис. Вы хотите использовать interval:

VALUES (now() + interval 10 second)

MySQL немного запутались насчет +. Без interval он обрабатывает значения как большие целые числа в формате ГГГГММДДЧЧММСС, поэтому вы получаете результаты, которые видите. С помощью interval он знает, что вы хотите +, чтобы добавить значения даты / времени.

Вы также можете использовать date_add().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...