Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: CL | DM;

Вниз

Опять даты   Найти похожие ветки 

 
oleg krechetov   (2004-09-24 11:15) [0]

Доброго времени суток Всем!
Есть табличка Paradox вида:
Dates|Chan1|Chan2|
Dates (datetime)
Chan1 и Chan2 (числовые)
Как выбрать все данные за вчерашний день.
и еще
Как выбрать все данные за последний час.

Может кто знает, подскажите.
Спасибо.


 
Johnmen ©   (2004-09-24 11:36) [1]

Запрос с параметром
...WHERE Dates BETWEEN :D1 AND :D2
Значения параметров вычисляешь в своем приложении.


 
sniknik ©   (2004-09-24 11:39) [2]

за вчерашний день
SELECT * FROM ATab WHERE Dat BETWEEN Date()-1 AND Date()
за последний час
SELECT * FROM ATab WHERE Dat >= Date()+TimeSerial(Hour(Time()), 0, 0)


 
oleg krechetov   (2004-09-24 11:58) [3]

SQL Explorer ругается, говорит:
Invalid use of keyword :  Date()-1 AND Date() и
Invalid use of keyword :  Date()+TimeSerial(Hour(Time()), 0, 0)

Может кавычки где нужны, или чтото другое.


 
Anatoly Podgoretsky ©   (2004-09-24 12:10) [4]

Используй параметры, как в примере [1]


 
sniknik ©   (2004-09-24 12:13) [5]

> SQL Explorer ругается, говорит:
естественно... ты же небось в родные драйвера полез? а это для jet-а (у тебя же движок не указан). (теоретически должно сработать и у тебя, если в ехплорере выбрать(создать) алиас на ODBC мелкософт парадокс драйвер)

с родным см лучше на пример от Johnmen ©   (24.09.04 11:36) [1]


 
oleg krechetov   (2004-09-24 12:40) [6]

С датами все получилось, а вот со временем никак.


 
Johnmen ©   (2004-09-24 12:42) [7]

А как "никак" ? Всё же аналогично...


 
oleg krechetov   (2004-09-24 12:57) [8]

По дате делаю так:

Query_Param_Days.Close;
Query_Param_Days.ParamByName("p_datetime").AsDateTime:= Date-1;
Query_Param_Days.SQL.Text:="Select * From  ReadPribor Where Dates = :p_datetime";
Query_Param_Days.Open;

А по времени как?


 
Johnmen ©   (2004-09-24 12:59) [9]

Да и по дате неправильно делаешь...


 
sniknik ©   (2004-09-24 13:11) [10]

Query_Param_Days.Close;
Query_Param_Days.SQL.Text:="Select * From  ReadPribor Where Dates BETWEEN :p_datetime1 AND :p_datetime2";
Query_Param_Days.ParamByName("p_datetime1").AsDateTime:= Date()-1;
Query_Param_Days.ParamByName("p_datetime2").AsDateTime:= Date();
Query_Param_Days.Open;

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


 
Johnmen ©   (2004-09-24 13:14) [11]

>sniknik ©   (24.09.04 13:11) [10]

А у тебя тоже ошибка...:)


 
sniknik ©   (2004-09-24 13:21) [12]

> А у тебя тоже ошибка...:)
?
думаеш Date() на самом деле со временем результат дает? (возможно на D5, на D7 "чистая" дата)
а в остальном (?), вроде все верно. где?


 
oleg krechetov   (2004-09-24 13:22) [13]

Да я переделал сделал отдельно поле даты и поле времени.
По дате сделал как в [10] все прекрасно рабодает.
А вот по времени как?
Почему вот это:
Query_Param_Days.Close;
Query_Param_Days.SQL.Text:="Select * From  ReadPribor Where Dates BETWEEN :p_datetime1 AND :p_datetime2";
Query_Param_Days.ParamByName("p_datetime1").AsDateTime:= Date()-1;
Query_Param_Days.ParamByName("p_datetime2").AsDateTime:= Date();
Query_Param_Days.Open;

лучше чем вот это:
Query_Param_Days.Close;
Query_Param_Days.ParamByName("p_datetime").AsDateTime:= Date-1;
Query_Param_Days.SQL.Text:="Select * From  ReadPribor Where Dates = :p_datetime";
Query_Param_Days.Open;


 
Johnmen ©   (2004-09-24 13:30) [14]

>sniknik ©   (24.09.04 13:21) [12]

Дело в другом. Да и я немного прогнал вначале.
>Как выбрать все данные за вчерашний день.

Сегодняшний день ему не нужен...Т.е. <Date


 
sniknik ©   (2004-09-24 14:20) [15]

> Почему вот это:
...
> лучше чем вот это:
...
задаеш значение параметру раньше чем его обьявляеш, чюдо что вообще работает (вероятно запрос уже дан, в конманент внесен, и параметр определен).
и второе четкое сравнение (=) на нечеткие данные (datataime), почему работать может уже в [10] обьяснял.

в сумме все работало...
2-я ошибка самоуничтожилась ;о), не надейся что всегда так везти будет.

> А вот по времени как?
также как в [2] но выраженое в дельфевских функциях. ;о)



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

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.023 c
1-1097355900
dock
2004-10-10 01:05
2004.10.24
Как сделать чтобы форма пропускала сообщения сквозь себя и не зад


6-1092667459
AlexanderVas
2004-08-16 18:44
2004.10.24
Вопрос по компоненту Indy.


1-1097000507
RedDragon
2004-10-05 22:21
2004.10.24
как мне сохранить переменные, не используя базы данных...


6-1091797258
Дмитрий Ботвин
2004-08-06 17:00
2004.10.24
Создание общего ресурса


3-1095917409
Настенька
2004-09-23 09:30
2004.10.24
сложный поиск





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский