У меня есть определенный диапазон дней, скажем, с 8-01 до 8-08. У меня также есть база данных с историческими данными за 1975-2014 годы. Даты форматируются в формате гггг-мм-дд. Например, сегодня 2014-08-06. Как я могу получить исторические записи с 8-01 по 8-08 за все годы? Имейте в виду, что мой диапазон дат может не охватывать один и тот же месяц. Другим примером может быть период с 31 июля по 07 августа.
По сути, я хочу иметь возможность делать МЕЖДУ (%-8-01 И%-8-08), где% является подстановочным знаком. Однако подстановочные знаки кажутся несовместимыми с объектами даты в MS SQL. Нужно ли мне преобразовывать даты в строки? Каков наиболее эффективный способ получить общий диапазон месяцев и дней независимо от года?
Спасибо.
SELECT * FROM Table WHERE DATEPART(MONTH, Table.Date) = 8 AND DATEPART(DAY, Table.Date) BETWEEN 1 AND 8
- person deterministicFail   schedule 06.08.2014