Извлечение деталей из отметки времени базы данных - PullRequest
2 голосов
/ 17 февраля 2009

Я изучаю метки времени. Я могу найти много информации о извлечении данных из текущих временных меток, но мало о том, чтобы запрашивать временную метку базы данных. Например, я хотел бы выполнить следующее (синтаксис неправильный, но, надеюсь, должен проиллюстрировать мой вопрос)

SELECT * FROM database where timestamp DAY('12') AND MONTH('01')

или

SELECT * FROM database where timestamp MONTH('01') AND YEAR('2009')

Вы можете указать мне правильное направление?

Ответы [ 2 ]

3 голосов
/ 17 февраля 2009

Вы можете использовать функцию MySQL FROM_UNIXTIME().

SELECT * FROM database WHERE DAY(FROM_UNIXTIME(timestamp)) = 12 
    AND MONTH(FROM_UNIXTIME(timestamp)) = 1

SELECT * FROM database WHERE MONTH(FROM_UNIXTIME(timestamp)) = 1
    AND YEAR(FROM_UNIXTIME(timestamp)) = 2009
1 голос
/ 17 февраля 2009

Для второго, более эффективный способ будет выглядеть так:

SELECT *
FROM database
WHERE timestamp BETWEEN
    UNIX_TIMESTAMP('2009-01-01 00:00:00')
    AND
    UNIX_TIMESTAMP('2009-01-31 23:59:59')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...