Как вывести результаты SQL-запроса из базы данных в виде сетки при добавлении сообщения об ошибке в виде сетки для значений NULL - PullRequest
0 голосов
/ 05 июля 2011

Я выбираю даты из базы данных, с типичным результатом четырех отдельных дат.Однако иногда дата отсутствует и возвращает только 3 даты. Я использую C #, asp.net.

Пример один:

2010-04-01 00:00:00.000,
2010-05-01 00:00:00.000,
2010-06-01 00:00:00.000,
2010-07-01 00:00:00.000

Пример 2:

2010-04-01 00:00:00.000,
2010-05-01 00:00:00.000,
2010-07-01 00:00:00.000

Я хочу, чтобы этот результат отображался в базе данных, а в пропущенном месяце появилось сообщение, которое занимает строку с сообщением типа «Нет записи».

Желаемый:

2010-04-01 00:00:00.000,
2010-05-01 00:00:00.000,
No Entry,
2010-07-01 00:00:00.000

Есть идеи, как это сделать?

Ответы [ 2 ]

0 голосов
/ 05 июля 2011

Попробуйте:

SELECT DISTINCT isnull([Period_Start] ,'NoEntry')) FROM [database]
0 голосов
/ 05 июля 2011

Я бы сделал правое объединение с полным набором результатов (набором результатов, который всегда будет содержать все нужные вам даты), и, если данные слева равны нулю, замените его нужным текстом.

Примерно так:

выберите случай, когда значение x.date не равно нулю, а затем значение x.date заканчивается «Нет записи» из myTable x right join completeTable c для x.date = c.date

...