Вниз
Скачать: CL | DM;

Составление запроса   Найти похожие ветки 

← →
Hadroran   (2008-12-05 16:27) [0]

Всем привет.
Помогите составить запрос SQL по след.условию.
- Необходимо получить данные таблицы ARRIVAL в которых значение поля S_DATE_ARR типа Date меньше текущей даты на 15.

Спасибо.


← →
Ega23 ©   (2008-12-05 16:32) [1]

declare @dt datetime;
Set @dt=cast( Floor(cast(getdate() as numeric(18,12))) as datetime)-15;
Select * from table where cast( Floor(cast(S_DATE_ARR as numeric(18,12))) as datetime)<@dt;


← →
Сергей М. ©   (2008-12-05 16:32) [2]

В чем затруднение ?


← →
Ega23 ©   (2008-12-05 16:33) [3]

опс. Виноват. Мне почему-то MSSQL увиделся.
Для IB не знаю.


← →
Виталий Панасенко   (2008-12-05 16:36) [4]


> Сергей М. ©   (05.12.08 16:32) [2]
>
> В чем затруднение ?

Видимо, человек не в курсе, как пишется знак "минус"..:-)


← →
Ega23 ©   (2008-12-05 16:58) [5]


> Видимо, человек не в курсе, как пишется знак "минус"..:-)


Минус минусу - lupus est.
Отобрать все записи, которые "позже сегодня" - это не значит, что выбрать всё, что меньше Now.


← →
Hadroran   (2008-12-08 15:55) [6]

Да-а-а. Раньше начинающим было легче ответ получить, а сейчас в мастерах смотрю "остряки" сидят.
Можно просто сказать как если кто знает?
Код пишу такой для отчета:

SELECT * FROM TABLE WHERE FIELD_1 IS NOT NULL AND (FIELD_1-NOW)<15

Ошибку выдает.


← →
clickmaker ©   (2008-12-08 15:57) [7]

> Раньше начинающим было легче ответ получить

возможно, потому что писали не просто "Ошибку выдает", а какую
NOW - функция? может, ее со скобками надо писать?


← →
Hadroran   (2008-12-08 16:06) [8]

Эх вы, мастера.

SELECT * FROM TABLE WHERE FIELD_1 IS NOT NULL AND (FIELD_1-CURRENT_DATE)<15

спасибо блин.


← →
pavel_guzhanov ©   (2008-12-08 16:12) [9]

SELECT * FROM TABLE WHERE FIELD_1 IS NOT NULL AND ("NOW"-FIELD_1)<15

но это будут те записи, у которых дата отличается от текущей не более чем на 15 дней.

Если же
> меньше текущей даты на 15.

, то
SELECT * FROM TABLE WHERE FIELD_1 IS NOT NULL AND FIELD_1="NOW"-15


← →
pavel_guzhanov ©   (2008-12-08 16:13) [10]

немного опоздал :о)


← →
Anatoly Podgoretsky ©   (2008-12-08 16:19) [11]


> Эх вы, мастера.

Ты слишком на многое расчитываешь, с таким ведением дисскуссии ты должен быть разЮ что мы еще немного шутим, а не оставляем тебя одного в пустыне.


← →
Anatoly Podgoretsky ©   (2008-12-08 16:23) [12]

Это не говоря уж о том, что вопрос офтопик, никакого отношения к Дельфи не имеет.


← →
Ega23 ©   (2008-12-08 16:46) [13]


> Если же
> > меньше текущей даты на 15.
>
> , то
> SELECT * FROM TABLE WHERE FIELD_1 IS NOT NULL AND FIELD_1="NOW"-15


Паша, а Now возвращает только дату, или дату-время?
Ибо если второе, то вероятность получить что-либо в твоём запросе исчезающе мала.


← →
pavel_guzhanov ©   (2008-12-09 10:58) [14]


> а Now возвращает только дату, или дату-время?

Специально посмотрел в конкретной базе - возвращает дату.:о)


← →
Ega23 ©   (2008-12-09 11:54) [15]


> Специально посмотрел в конкретной базе - возвращает дату. :о)


Ну тогда вопрос снят. Просто в MSSQL getdate() возвращает именно дату-время.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.48 MB
Время: 0.011 c
1-1207151915
Кодер
2008-04-02 19:58
2009.01.25
Курсор и блокировка формы


2-1228923689
Djels
2008-12-10 18:41
2009.01.25
Turbo Pascal


15-1227187094
Вопросик
2008-11-20 16:18
2009.01.25
Просто объяснить можете?


2-1229020903
CodeMaster
2008-12-11 21:41
2009.01.25
Проблема с выводом на канву


2-1228997565
palpalich
2008-12-11 15:12
2009.01.25
Стеки и очереди в Turbo Pascal 7.0




   Наверх