|
|
|
Помогите сформировать sql-запрос
|
|||
|---|---|---|---|
|
#18+
Не могу сформировать sql-запрос для следующей задачи. Нужно выбрать из базы именинников за DeltaDay дней, то есть за сегодня и период DeltaDay до и после. Не пойму, можно ли как-то использовать Between, потому что мне не нужно учитывать год рождения... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2002, 09:54:06 |
|
||
|
Помогите сформировать sql-запрос
|
|||
|---|---|---|---|
|
#18+
DATEADD()? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2002, 10:10:19 |
|
||
|
Помогите сформировать sql-запрос
|
|||
|---|---|---|---|
|
#18+
... WHERE CONVERT(char(5), mytable.birthday, 110) BETWEEN CONVERT(char(5), @period_begin, 110) AND CONVERT(char(5), @period_end, 110) ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2002, 10:34:19 |
|
||
|
Помогите сформировать sql-запрос
|
|||
|---|---|---|---|
|
#18+
Может быть не оптимально, просто первое что пришло в голову: declare @Date datetime,@DeltaDay int Select @Date='20020612',@DeltaDay=2 Select *, datepart(month,dateadd(day,@DeltaDay*(-1),birthdate)), datepart(day,dateadd(day,@DeltaDay*(-1),birthdate)) from tBirthDays where datepart(month,birthdate)*100+datepart(day,birthdate) between datepart(month,dateadd(day,@DeltaDay*(-1),@Date))*100+datepart(day,dateadd(day,@DeltaDay*(-1),@Date)) and datepart(month,dateadd(day,@DeltaDay,@Date))*100+datepart(day,dateadd(day,@DeltaDay,@Date)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.06.2002, 10:35:48 |
|
||
|
|

start [/forum/topic.php?fid=46&msg=32032624&tid=1822378]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
167ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 477ms |

| 0 / 0 |
