|
|
|
Проблема BETWEEN при работе с датой!
|
|||
|---|---|---|---|
|
#18+
Довольно странная штука получается. Дано: столбец1 - number (primary key) столбец2 - varchar столбец3 - date выборка идет по ключу и дате, но дата в интервале т е WHERE id = ### AND timestamp between to_date('20030501','YYYYMMDD') - 14 and to_date('20030501','YYYYMMDD') + 14 Тоесть вперед и назад по 14 дней от передаваемого в запрос значения. Проблема: запрос считает только + 13 дней вперед. Он не выбирает значения вида 20030515 10:12, тоесть 20030501 + 14 = 20030515, но так как полный таймстэмп, это еще часы , минуты, секунды, видимо он рассматривает это как большее значение. Странно то, что при применении подобного запроса к формату до минут (YYYYMMDD HH:MI) , все работает нормально и выборка идет правильно не взирая на секунды. Хотелось бы понять в чем тут подвох. С уважением. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.06.2003, 08:02:54 |
|
||
|
Проблема BETWEEN при работе с датой!
|
|||
|---|---|---|---|
|
#18+
после to_date у тебя дата без часов и минут нужно добавить 23:59 чтобы все было ок WHERE id = ### AND timestamp between to_date('20030501','YYYYMMDD') - 14 and to_date('20030501','YYYYMMDD') + 14 +.99999 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.06.2003, 09:58:19 |
|
||
|
|

start [/forum/topic.php?fid=52&gotonew=1&tid=1990038]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
34ms |
get topic data: |
8ms |
get first new msg: |
4ms |
get forum data: |
2ms |
get page messages: |
31ms |
get tp. blocked users: |
1ms |
| others: | 230ms |
| total: | 336ms |

| 0 / 0 |
