ФорумРазработкаБазы данных → Выбрать запись текущего месяца

Выбрать запись текущего месяца

  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 10 мая 2009 г. 20:51

    Вобщем САБЖ.
    чет я даже не представляю как. (один говнокод науме =()

    Ах да, и сразу такой вопросик.
    Как сразу данные получить не в таком виде 2009-05-10 а в таком 20090510 ?
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 10 мая 2009 г. 21:09, спустя 18 минут 27 секунд

    DATE_FORMAT(date,format)
    Форматирует величину date в соответствии со строкой format. В строке format могут использоваться следующие определители:
    Определитель Описание
    %M Название месяца (январь…декабрь)
    %W Название дня недели (воскресенье…суббота)
    %D День месяца с английским суффиксом (0st, 1st, 2nd, 3rd и т.д.)
    %Y Год, число, 4 разряда
    %y Год, число, 2 разряда
    %X Год для недели, где воскресенье считается первым днем недели, число, 4 разряда, используется с '%V'
    %x Год для недели, где воскресенье считается первым днем недели, число, 4 разряда, используется с '%v'
    %a Сокращенное наименование дня недели (Вс…Сб)
    %d День месяца, число (00..31)
    %e День месяца, число (0..31)
    %m Месяц, число (00..12)
    %c Месяц, число (0..12)
    %b Сокращенное наименование месяца (Янв…Дек)
    %j День года (001..366)
    %H Час (00..23)
    %k Час (0..23)
    %h Час (01..12)
    %I Час (01..12)
    %l Час (1..12)
    %i Минуты, число (00..59)
    %r Время, 12-часовой формат (hh:mm:ss [AP]M)
    %T Время, 24-часовой формат (hh:mm:ss)
    %S Секунды (00..59)
    %s Секунды (00..59)
    %p AM или PM
    %w День недели (0=воскресенье..6=суббота)
    %U Неделя (00..53), где воскресенье считается первым днем недели
    %u Неделя (00..53), где понедельник считается первым днем недели
    %V Неделя (01..53), где воскресенье считается первым днем недели. Используется с `%X'
    %v Неделя (01..53), где понедельник считается первым днем недели. Используется с `%x'
    %% Литерал `%'.
    Все другие символы просто копируются в результирующее выражение без интерпретации:

    mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%W %M %Y');
    -> 'Saturday October 1997'
    mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H:%i:%s');
    -> '22:23:00'
    mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%D %y %a %d %m %b %j');
    -> '4th 97 Sat 04 10 Oct 277'
    mysql> SELECT DATE_FORMAT('1997-10-04 22:23:00', '%H %k %I %r %T %S %w');
    -> '22 22 10 10:23:00 PM 22:23:00 00 6'
    mysql> SELECT DATE_FORMAT('1999-01-01', '%X %V');
    -> '1998 52'
    В MySQL 3.23 символ `%' должен предшествовать символам определителя формата. В более ранних версиях MySQL символ `%' необязателен. Причина того, что промежутки для месяца и дня начинаются с нуля заключается в том, что MySQL позволяет использовать неполные даты, такие как '2004-00-00', начиная с MySQL 3.23.
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 10 мая 2009 г. 21:58, спустя 48 минут 59 секунд

    ухты плюсеггг :DDD
    PS на здоровье :)
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 10 мая 2009 г. 22:02, спустя 3 минуты 29 секунд

    Как сразу данные получить не в таком виде 2009-05-10 а в таком 20090510 ?

    просто изначально храни их в таком виде (TIMESTAMP).
    имхо удобнее
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 10 мая 2009 г. 22:03, спустя 1 минуту 35 секунд


    Как сразу данные получить не в таком виде 2009-05-10 а в таком 20090510 ?

    просто изначально храни их в таком виде (TIMESTAMP).
    имхо удобнее
    +1
    я что то сразу забыл про таймстамп :( сцук когда же я буду все помнить :DDD
  • NRG

    Сообщения: 4761 Репутация: N Группа: в ухо

    Spritz 10 мая 2009 г. 22:04, спустя 37 секунд



    Как сразу данные получить не в таком виде 2009-05-10 а в таком 20090510 ?

    просто изначально храни их в таком виде (TIMESTAMP).
    имхо удобнее
    +1
    я что то сразу забыл про таймстамп :( сцук когда же я буду все помнить :DDD

    с опытом, с опытом…. =)))
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 10 мая 2009 г. 22:05, спустя 55 секунд




    Как сразу данные получить не в таком виде 2009-05-10 а в таком 20090510 ?

    просто изначально храни их в таком виде (TIMESTAMP).
    имхо удобнее
    +1
    я что то сразу забыл про таймстамп :( сцук когда же я буду все помнить :DDD

    с опытом, с опытом…. =)))
    ой да поскорее бы :)))
  • mario

    Сообщения: 6067 Репутация: N Группа: Джедаи

    Spritz 10 мая 2009 г. 22:07, спустя 1 минуту 39 секунд

    кстати Professor плюсег лучше дуду поставить, ибо это он мну ткнул читать про мускуль :DDD
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 10 мая 2009 г. 22:07, спустя 32 секунды

    TIMESTAMP онжу автоматом ставит. А мне не нужно чтоб автоматом ставил=)
    хотя наверно если убрать по умолчанию NOW то не будет хз =)
  • adw0rd

    Сообщения: 22959 Репутация: N Группа: в ухо

    Spritz 10 мая 2009 г. 22:56, спустя 48 минут 56 секунд

    TIMESTAMP самый правильный формат для хранения даты, просто читайте ман.
    https://smappi.org/ - платформа по созданию API на все случаи жизни
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 11 мая 2009 г. 11:36, спустя 12 часов 40 минут

    А проблемма то осталась =) никто САБЖ не заметил =)

    как мне выбрать только данный месяц если данные хранятся в типе DATE ?
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 11 мая 2009 г. 11:46, спустя 9 минут 40 секунд

    WHERE MONTH(`date`)=MONTH(NOW())
    все умрут, а я изумруд
  • Professor

    Сообщения: 2089 Репутация: N Группа: Адекваты

    Spritz 11 мая 2009 г. 11:49, спустя 3 минуты 21 секунду

    О, спасибки =)
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 11 мая 2009 г. 14:19, спустя 2 часа 29 минут 30 секунд


    WHERE MONTH(`date`)=MONTH(NOW())

    кросавчег))

    Сапожник без сапог
  • md5

    Сообщения: 11960 Репутация: N Группа: в ухо

    Spritz 11 мая 2009 г. 14:30, спустя 11 минут 43 секунды



    WHERE MONTH(`date`)=MONTH(NOW())

    кросавчег))


    а че?
    все умрут, а я изумруд

Пожалуйста, авторизуйтесь, чтобы написать комментарий!