Добавить в корзинуПозвонить
Найти в Дзене
Реальный Эксель

ГГГГ-НН (ММ-ДД

) Как лучше показывать недели в отчете? Вечная беда - как сделать недельное представление данных интуитивно понятным. Когда говоришь - тридцатая неделя 2026-30... Сколько людей сможет сопоставить это с календарем и понять хоть примерно про какой месяц идет речь. Даю супер лайфхак! Пишите номер недели и в скобках указывайте месяц и день первого дня недели. Тогда сразу всем станет хорошо. Ведь 2026-30 превратится в 2026-30 (07-20) или вовсе даже в 2026-30 (20 июля). Чтобы каждый раз не лохматить ИИшку дам варианты такого форматирования на нескольких языках. Excel =ТЕКСТ(A2;"гггг") & "-" & ТЕКСТ(НОМНЕДЕЛИ.ISO(A2);"00") & " (" & ТЕКСТ(A2-ДЕНЬНЕД(A2;2)+1;"ММ-дд") & ")" SELECT CONCAT( YEAR(your_date_column), '-', LPAD(WEEK(your_date_column, 3), 2, '0'), ' (', DATE_FORMAT( DATE_ADD( MAKEDATE(YEAR(your_date_column), 1), INTERVAL (WEEK(your_date_column, 3) - 1) WEEK ), '%m-%d' ), ')' ) AS year_week_first_day FROM your_table; SET DATEFIRST 1; -- Устанавливаем понедельник как первый день н

ГГГГ-НН (ММ-ДД)

Как лучше показывать недели в отчете?

Вечная беда - как сделать недельное представление данных интуитивно понятным.

Когда говоришь - тридцатая неделя 2026-30...

Сколько людей сможет сопоставить это с календарем и понять хоть примерно про какой месяц идет речь.

Даю супер лайфхак!

Пишите номер недели и в скобках указывайте месяц и день первого дня недели.

Тогда сразу всем станет хорошо.

Ведь 2026-30 превратится в 2026-30 (07-20) или вовсе даже в 2026-30 (20 июля).

Чтобы каждый раз не лохматить ИИшку дам варианты такого форматирования на нескольких языках.

Excel

=ТЕКСТ(A2;"гггг") & "-" & ТЕКСТ(НОМНЕДЕЛИ.ISO(A2);"00") & " (" & ТЕКСТ(A2-ДЕНЬНЕД(A2;2)+1;"ММ-дд") & ")"

SELECT

CONCAT(

YEAR(your_date_column),

'-',

LPAD(WEEK(your_date_column, 3), 2, '0'),

' (',

DATE_FORMAT(

DATE_ADD(

MAKEDATE(YEAR(your_date_column), 1),

INTERVAL (WEEK(your_date_column, 3) - 1) WEEK

),

'%m-%d'

),

')'

) AS year_week_first_day

FROM your_table;

SET DATEFIRST 1; -- Устанавливаем понедельник как первый день недели

SELECT

CONCAT(

YEAR(your_date_column),

'-',

FORMAT(DATEPART(iso_week, your_date_column), '00'),

' (',

FORMAT(

DATEADD(DAY, 1 - DATEPART(dw, your_date_column), your_date_column),

'MM-dd'

),

')'

) AS year_week_first_day

FROM your_table;

SELECT

TO_CHAR(your_date_column, 'YYYY') || '-' ||

TO_CHAR(your_date_column, 'IW') || ' (' ||

TO_CHAR(date_trunc('week', your_date_column), 'MM-DD') ||

')' AS year_week_first_day

FROM your_table;

SELECT

TO_CHAR(your_date_column, 'YYYY') || '-' ||

TO_CHAR(your_date_column, 'IW') || ' (' ||

TO_CHAR(TRUNC(your_date_column, 'IW'), 'MM-DD' ) ||

')' AS year_week_first_day

FROM your_table;

Пользуйтесь на здоровье! 😊

Всем Эксель!