Rails mysql, как изменить время на нескольких столбцах сразу?

0

В моей таблице есть столбец dato, который содержит дату и время:

2011-04-12 10:37:07
2011-04-12 10:31:07
2011-04-10 10:32:07
2011-04-11 10:45:07
2011-04-12 10:37:07

Я хочу изменить все столбцы dato до 00:00:00

Как это сделать?

  • 0
    Это более сложный запрос, чем вы думаете. Если вы делаете это часто, вам может быть проще отделить дату от времени или просто сохранить дату и не указывать время, и вы всегда получите 00:00:00 по умолчанию.
Теги:
ruby-on-rails-3

3 ответа

1
Лучший ответ

Вы можете сделать это со следующим запросом

UPDATE <table> SET <date column>= DATE(<date column>);

например.

UPDATE Customer SET startDate = DATE(startDate);

Вы можете сделать это с консоли с помощью инструмента mysql.

0

Я считаю, что вы хотите изменить несколько записей, а не столбцы. В любом случае:

UPDATE mytable
SET dato = DATE_FORMAT(dato, '%Y-%m-%d 00:00:00');
  • 0
    Должен ли я сделать это в консоли / терминале?
  • 1
    Если это одноразовое изменение, просто запустите консоль MySQL и сделайте это там. Если вам нужно делать это регулярно, то вам следует пересмотреть возможность исправления кода приложения. Кстати, я бы рекомендовал решение Джонаса вместо моего.
0
  • 0
    Как я могу использовать обновление всех без перезаписи даты (2011-04-12)?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню