непонятки с типом TIME

Тема в разделе "Базы данных", создана пользователем p486, 22 окт 2010.

Статус темы:
Закрыта.
Модераторы: latteo
  1. p486

    p486 Постоялец

    Регистр.:
    11 сен 2010
    Сообщения:
    94
    Симпатии:
    0
    доброго времени суток.

    при записи в БД на MySQL значения для секунд и минут можно записать от 00-59, большее число записывается как 00 что есть нормальным.
    почему тогда при записи времени часов я могу писать числа от 00 до 59? это баг или как?

    еще один вопросик из поля с типом TIME можно делать выборку по маске? например все записи с значением 8 часов а минуты и секунды чтобы были разными?
     
  2. WerewolfGSM

    WerewolfGSM

    Регистр.:
    4 дек 2006
    Сообщения:
    256
    Симпатии:
    11
    для выбора по маске попробуйте воспользовться функциями HOUR, MINUTE,SECOND
    SELECT * FROM DBNAME WHERE HOUR(TIME_COL) = '8'
    Как то так.
    где DBNAME - имя БД,
    TIME_COL - имя колонки с датой.

    Еще можно попробовать использовать функцию интервала: date_add(now(), interval 1 hour);
     
    p486 нравится это.
  3. p486

    p486 Постоялец

    Регистр.:
    11 сен 2010
    Сообщения:
    94
    Симпатии:
    0
    спс за ответ. я немного поэкспериментировал получается еще таким образом:

    SELECT *
    FROM `on`
    WHERE on.time LIKE "08:__:__"

    возник еще один вопросик. можно ли в поле типа TIME записывать посторонние символы т.е. маску?
     
Статус темы:
Закрыта.