Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Сравнение дат [D5, dBase, FoxPro]


ZoKr ©   (2003-10-07 07:33:00) 

Уважаемые мастера!
Помогите пожалуйста с таким вопросом - у меня есть SQL запрос для выборки данных и нужно организовать сравнение дат(от xxxx до xxxx). Я не спец в SQL, а просто дата1>дата2 не проктывает... :-((


ZoKr   (2003-10-07 11:00:00) [1]

2 Наталия - работает, но так мне не надо...
2 Плохиш - да
2 Izyum, sniknik - Точно, меня что-то завернуло...
Теперь правда все работает, всем БОЛЬШОЙ ПАСИБ!
:-)))


sniknik   (2003-10-07 10:41:00) [2]

> Или этот способ для даты не пашет
как это не пашет? пашет, только почву нужно подходящую. ;о))

DATFV это тоже дата? тогда сравнение со строкой некорректно. сравнивай с null (DATFV IS NOT NULL) это проверка пустого значения в local sql. (это пытаешся проверить? и вроде у тебя local)


Danilka   (2003-10-07 10:37:00) [3]

[7] ZoKr © (07.10.03 09:47)
см: [5] jack128 © (07.10.03 08:57)


Izyum   (2003-10-07 10:37:00) [4]

Если мне память не врет, то Фокс даты хранит не в текстовом виде. Опять же нужно посиотреть сколько цифирей в БД отводится под год (2 или 4). Да и не очень Фоксовские базы заточены для SQL-я. Хотя, все в мире относительно и я могу ошибаться:)


Плохиш_   (2003-10-07 10:35:00) [5]

ZoKr © (07.10.03 09:47) [7]

DATFVа это, небось, типа дата?


Наталия   (2003-10-07 10:30:00) [6]

Попробуй без "AND (DATFV<>"")" - работает?


ZoKr   (2003-10-07 09:47:00) [7]

...рано радовался... :-(((
Говорит "Type mismatch in expression"... :-(
DatPos - TDataTime;
Query_Sriv_srokov.sql.Add("WHERE (DATPOS BETWEEN ""+Srok_S.Text+"" AND ""+Srok_Po.Text+"") AND (DATFV<>"")");
2 Жук - И что же я опять неправильно сделал?.. ..Или этот способ для даты не пашет?


ZoKr   (2003-10-07 09:38:00) [8]

2 Жук - БОЛЬШОЕ ПАСИБА за такое развлечение!
...То, что доктор прописал! :-)))))


jack128   (2003-10-07 08:57:00) [9]

изпользуй параметры tquery и не будет проблем..


Жук   (2003-10-07 08:51:00) [10]

select *
from mytable
where ondate between "01.01.2003" and "01.01.2004"

Развлечёмся :-)


sniknik   (2003-10-07 08:49:00) [11]

ZoKr © (07.10.03 08:39) [2]
> 2 sniknik - типа "ха", в смысле, я не знаю, как именно обозначается дата, как строка? ("01.01.2000")
не, "xa" в смысле нет данных для однозначного ответа. (значит вопрос это не вопрос а завуалированное предложение потрепатся)

а как именно обозначается дата ты действительно не знаеш (не растраивайся я тоже), т.к. представление полностью зависит от настроек. и закладываться на сиюминутное представление поверь не стоит.

p.s. ну вы тут развлекайтесь, а мне на работу пора.


ZoKr   (2003-10-07 08:39:00) [12]

2 sniknik - типа "ха", в смысле, я не знаю, как именно обозначается дата, как строка? ("01.01.2000")


sniknik   (2003-10-07 08:21:00) [13]

> просто дата1>дата2 не проктывает
а ведь должно прокатывать, но у тебя видать ошибка в прокатном стане. ;) наверное гдето в районе 17-й строки (и это уже не шутка).


Наверх

Титульная страница Поиск, карта сайта Написать письмо