Вот вариант с использованием DATEADD
и DATEDIFF
:
SELECT
a.ucdaycode,
DATEADD(dd, a.ucdaycode, DATEADD(month, DATEDIFF(month, 0, GETDATE()), 0)) AS some_date
FROM yourTable a;
Ответ @Zohar выглядит несколько чище, но он может работать только на SQL Server 2012 или более поздней версии.
Когда я преподаю наш модульный тест / класс TDD, я обычно говорю людям коду теста записи после тех же принципов, как они были бы при написании производственного кода тестера. Однако я подтверждаю, что некоторые правила FxCop могут генерировать слишком много шума.
Разве Вы не могли использовать подходящее подмножество правил FxCop для тестового кода?
не стоящий усилия; FxCop для производственных стандартов кодирования, не внутреннего тестового кода
(однако, не повреждает давать ему просмотр и поверхностный осмотр время от времени, в случае, если это говорит Вам что-то полезное...),
Да, но Вы не должны быть маньяком об этом. Вы - тесты, Ваш лучший друг кодера обслуживания. Если Ваши тесты не будет легко считать, то Вашему кодеру обслуживания придется нелегко вещей. Я думаю, что это помогает поощрить лучшие привычки, код модульного теста не имеет разрешающей лицензии, чтобы быть неаккуратным.
Разрешение, если Вы имеете свободное время. Не плохая идея заставить полицейского смотреть на весь Ваш код.