SSRS как отсортировать дату в формате MM/YY?

77
9

Я застрял на этом этапе, я получаю свои данные из хранимой процедуры с форматом даты как MM/YY, но SSRS неправильно отсортировал мою дату: 01/2019, 02/2019,..., 12/2019; 01/2018, 02/2018,...

Поэтому я бы хотел, чтобы мои данные были в правильном порядке.

спросил(а) 2021-01-25T12:26:17+03:00 5 месяцев назад
1
Решение
63

Поскольку ваша дата конвертируется в формат ММ/ГГГГ, данные являются текстовыми, а не числовыми, поэтому сортируются по одному символу за раз, а не по значению.

Если вы хотите отсортировать по году, а затем по месяцу, вам понадобится отдельный параметр SORT для каждого, который разбирает текст на отдельные значения месяца и года.

=RIGHT(Fields!DOB.Value, 4)

Это получает 4 символа справа от текста, который является годом в данных.

=LEFT(Fields!DOB.Value, 2)

LEFT, 2 получает первые два символа строки - месяц в поле.

enter image description here

ответил(а) 2021-01-25T12:26:17+03:00 5 месяцев назад
45

Создайте в запросе новый столбец, в котором вы преобразуете строковую дату в тип данных date и сортируете по ней, например:


select
convert(date, '01/'+ MyDateStringColumn) MyDateColumn
from MyTable
order by MyDateColumn

ответил(а) 2021-01-25T12:26:17+03:00 5 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема