MySQL выбирает метку времени col в секундах - PullRequest
0 голосов
/ 05 сентября 2018

Я хочу выбрать столбец отметки времени, который содержит дату.

Я хочу получить результат за секунды , я пробовал это, но не работает .

$req = $database->query('SELECT energy, maxEnergy, DATE_FORMAT(last_attack, "%s") FROM users WHERE id = '.$userID.'');

столбец last_attack содержит: 2018-09-05 09: 26: 38

И результат дает мне: ["DATE_FORMAT(last_attack, "%s")"]=> string(2) "38"

Мне не нужны секунды в моей дате, я хочу, чтобы все даты конвертировались в секундах ...

Что я делаю не так? Спасибо.

Ответы [ 3 ]

0 голосов
/ 05 сентября 2018

Мне кажется, вы ищете сумму, seconds пройденную с last_attack. Вы должны использовать TIMESTAMPDIFF() для достижения этого.

select TIMESTAMPDIFF(SECOND, '2018-09-05 09:26:38', NOW());

TIMESTAMPDIFF() принимает три параметра unit, date_time1 и date_time2 и возвращает разницу между date_time2 и date_time1 (date_time2 - date_time) в unit.

0 голосов
/ 05 сентября 2018

Вы должны использовать UNIX_TIMESTAMP

Выберите UNIX_TIMESTAMP(last_attack) как my_required из пользователей ...

0 голосов
/ 05 сентября 2018

использовать TIME_TO_SEC

SELECT energy, maxEnergy, TIME_TO_SEC(last_attack) FROM users WHERE id = '.$userID.'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...