Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];

Вниз

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

 
Цукор5   (2007-06-05 09:23) [0]

Господа,имею таблицу в которой есть поля с датой и временем.
Нужно выполнить отчет и отобрать записи скажем с 01.06.07 00:00 по 04.06.07 00:00.
Соответственно, если сделать так :

select * from таблица where поле_с_датой between :da1 and :da2 and поле_со_временем between :ti1 and :ti2

То,естественно ничего не выбирается, по причине того, что время 00:00.
Какие будут предложения ?
Спасибо !


 
ЮЮ ©   (2007-06-05 09:34) [1]

>есть поля с датой и временем.

А типы этих полей какие?
Специальный тип даты/времени не использовал по религиознвм причинам?


 
Desdechado ©   (2007-06-05 11:14) [2]

Если время всегда 00:00, то достаточно обойтись датой.


 
Krants ©   (2007-06-05 11:17) [3]

тож хотел бы узнать...
сам, в таком случае, не использую параметры:
if dat1<>00:00 then
sql:="select * from таблица where поле_с_датой > "+dat1


 
Krants ©   (2007-06-05 11:23) [4]

хотя нет брешу, можно и так
if dat1="ноль" then
параметр[dar1].value:="01/01/0100"


min и max даты у разных баз отличается...


 
sniknik ©   (2007-06-05 11:32) [5]

> Какие будут предложения ?
использовать поле датавремя.

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


 
ЮЮ ©   (2007-06-05 11:39) [6]

> если нет то операцию условия делать над обьединенной датой
> и временем в датавремя.

Ну не обязательно. (В Paradox-е, кстати, дата и время разные типы, хотя оба и соответствуют TDateTimeField). Если вреия в поиске неважно, то и на поля не обращать внимание. Если важно, то его рассматривать только на крайнмх дня интервала, а для внутренних поле времени опять не важно.


 
sniknik ©   (2007-06-05 12:10) [7]

> Если важно, то его рассматривать только на крайнмх дня интервала, а для внутренних поле времени опять не важно.
3 три условия вместо одного?...
с большой вероятностью сделать логическую ошибку, как [0] например... возможно. (не объяснено чего делается запросом, и если там именно попытка выбора интервала, логический глюк с неполучением части данных уже есть)

можно, если выбора нет, как в парадокс (кстати в 7-м вроде есть, такой тип. (?)), но если выбор есть?


 
Цукор5   (2007-06-05 18:48) [8]

Хорошо, а если использовать специальный тип даты/времени. Понятно, что запрос будет проще и логичней. Но как тогда объединить TDateTimePicker ? Ведь их по 2 будет...для даты и времени.
Что тут (IbSQL1.ParamByName("da1").Value = ???)писать ?


 
Правильный Вася   (2007-06-05 18:56) [9]

Picker1.Date+Picker2.Time


 
Цукор5   (2007-06-05 19:52) [10]

2 Правильный Вася   (05.06.07 18:56) [9]

Понял,спасибо. Тогда еще вопрос. Какой должен быть формат даты/времени в системе ? Как уйти от формата в системе...ибо он может быть разный у всех.

К чему я это спрашиваю. В IbExpert запрос выполняется,а у моем приложении нет.


 
Johnmen ©   (2007-06-05 19:57) [11]

Нет, не так.
А вот так: Int(Picker1.Date)+Frac(Picker2.Time)


 
Johnmen ©   (2007-06-05 19:58) [12]


> Цукор5   (05.06.07 19:52) [10]

Когда начнешь хелп читать?


 
Цукор5   (2007-06-05 20:01) [13]

2 Johnmen ©   (05.06.07 19:57) [11]
>А вот так: Int(Picker1.Date)+Frac(Picker2.Time)
не помогло.

>Когда начнешь хелп читать?
Дык...надо ж определиться за какой хелп браться за FB или Delphi.


 
Цукор5   (2007-06-05 20:05) [14]

2 Johnmen ©   (05.06.07 19:57) [11]

Пардон. Оказывается нужно указывать не Value,а AsDateTime.
С  AsDateTime все заработало.

Последний вопрос...или скажите какой хелп читать. Существует ли привязка формата даты\времени ? Будет ли работать запрос, если изменю формат даты\времени в системе ?


 
Johnmen ©   (2007-06-05 20:08) [15]

Будет. Читай TDateTime + F1.


 
имя   (2007-06-12 16:16) [16]

Удалено модератором


 
имя   (2007-06-18 14:53) [17]

Удалено модератором



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

Форум: "Начинающим";
Текущий архив: 2007.07.15;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.04 c
2-1182338459
авыф
2007-06-20 15:21
2007.07.15
сетевая папка


6-1166481018
PHPDeveloper
2006-12-19 01:30
2007.07.15
WebBrowser


2-1182429999
kotenok
2007-06-21 16:46
2007.07.15
как с помощью regexp выбрать несколько с услвием and?


3-1176308319
azamatufa
2007-04-11 20:18
2007.07.15
Рекурсия, дерево


15-1181701955
Slider007
2007-06-13 06:32
2007.07.15
С днем рождения ! 11 июня 2007 понедельник





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский