powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL: прибывать 14 месяцев и от результата взять первое число
5 сообщений из 5, страница 1 из 1
MySQL: прибывать 14 месяцев и от результата взять первое число
    #39208631
Дано:
таблица MyTab, есть поле типа DATE
Таблица NewTab, с таким-же полем, которое надо заполнить ПЛЮС 14 месяце, взять первое число (если кому интересно - расчет остановки ККМ после замены ЭКЛЗ).
Например:
Дата 23.01.2016
Плюсуем 14 месяце: 23.03.2017
Берем первое число: 01.03.2017

Приплюсовать 14 месяцев - получилось: date_add(MyTab.dats,interva 14 month)
Получить первое число - не вышло :-(

Второй подход:
Получил год: YEAR(MyTab.dats) (2016)
Плюс 1 (2017)
Получим месяц: MONTH(MyTab.dats) (01)
Плюс 2 (3)
Опять не выходит получить первое число
В чем-то от микрософта использовал функцию DateSerial(ГОД, МЕСЯЦ,1)
Какую функцию использовать в MySQL?
...
Рейтинг: 0 / 0
MySQL: прибывать 14 месяцев и от результата взять первое число
    #39208641
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
mysql> SET @date = '2016-01-23';
Query OK, 0 rows affected (0.01 sec)

mysql> SELECT @date + INTERVAL 14 MONTH - INTERVAL (DAY(@date) - 1) DAY AS newdate;
+------------+
| newdate    |
+------------+
| 2017-03-01 |
+------------+
1 row in set (0.00 sec)
...
Рейтинг: 0 / 0
MySQL: прибывать 14 месяцев и от результата взять первое число
    #39208644
MikkiMouse
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Алексей Стрекалов,

Код: sql
1.
2.
3.
4.
5.
6.
7.
MariaDB [(none)]> SELECT DATE_FORMAT(DATE_ADD(STR_TO_DATE('23.01.2016', '%d.%m.%Y'), INTERVAL 14 MONTH), '01.%m.%Y');
+---------------------------------------------------------------------------------------------+
| DATE_FORMAT(DATE_ADD(STR_TO_DATE('23.01.2016', '%d.%m.%Y'), INTERVAL 14 MONTH), '01.%m.%Y') |
+---------------------------------------------------------------------------------------------+
| 01.03.2017                                                                                  |
+---------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
...
Рейтинг: 0 / 0
MySQL: прибывать 14 месяцев и от результата взять первое число
    #39208667
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Поправка - сначала надо вычитать:
Код: sql
1.
SELECT @date - INTERVAL (DAY(@date) - 1) DAY + INTERVAL 14 MONTH
...
Рейтинг: 0 / 0
MySQL: прибывать 14 месяцев и от результата взять первое число
    #39208912
Akina,
Биг сенькс - сработало.
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / MySQL: прибывать 14 месяцев и от результата взять первое число
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]