На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! информация о разделе
user posted imageДанный раздел предназначается исключительно для обсуждения вопросов использования языка запросов SQL. Обсуждение общих вопросов, связанных с тематикой баз данных - обсуждаем в разделе "Базы данных: общие вопросы". Убедительная просьба - соблюдать "Правила форума" и не пренебрегать "Правильным оформлением своих тем". Прежде, чем создавать тему, имеет смысл заглянуть в раздел "Базы данных: FAQ", возможно там уже есть ответ.

Модераторы: Akina
  
> арифметика времени
    здравствуйте! столкнулся с такой проблемой. в общем есть дата и время которая ложиться в БД в разных столбцах DATE и TIME перед записью нада сделать чтобы время и дата отставали на пол часа с учетом корректного отставания по дате...
    делал так:
    ExpandedWrap disabled
      '2016-11-28' - INTERVAL 1 DAY
    и так:
    ExpandedWrap disabled
      DATE_FORMAT(DATE_ADD(DATE_FORMAT("2016-11-28", '%Y-%m-%d %H:%i:%s'), INTERVAL -30 MINUTE), '%Y-%m-%d')
    работает
    а так:
    ExpandedWrap disabled
      '15:15:15' - INTERVAL 30 MINUTE
    и так:
    ExpandedWrap disabled
      DATE_FORMAT("15:15:15", '%H:%i:%s') - INTERVAL 30 MINUTE
    не работает. отдельных функций для работы со временем я не нашел. какие мысли как можно побороть?
      Цитата p486 @
      как можно побороть?

      Уйти от
      Цитата p486 @
      в разных столбцах

      Ну или собирай полную дату-время из двух полей, потом минуси, и снова разбирай.

      Цитата p486 @
      отдельных функций для работы со временем я не нашел

      Ну значит так искал... http://dev.mysql.com/doc/refman/5.7/en/dat...unction_addtime
        Цитата Akina @

        СПАСИБО!
        ExpandedWrap disabled
          ADDTIME("15:15:15", "-00:30:00")
        так то лучше
          Цитата p486 @
          ADDTIME("15:15:15", "-00:30:00")

          а если
          ExpandedWrap disabled
            ADDTIME("00:15:15", "-00:30:00")

          Так что в любом случае
          Цитата Akina @
          собирай полную дату-время из двух полей, потом минуси, и снова разбирай
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0233 ]   [ 16 queries used ]   [ Generated: 28.03.24, 23:16 GMT ]