powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / запрос промежуток времени
9 сообщений из 9, страница 1 из 1
запрос промежуток времени
    #38627008
Shnaizer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: pascal
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
procedure TForm26.Button3Click(Sender: TObject);
begin
DataModule2.IBQuery13.Close;
data:=datetostr(MonthCalendar1.date);
DataModule2.IBQuery13.SQL.Clear;
if CheckBox1.Checked=true then
 begin
   DataModule2.IBQuery13.SQL.Add('SELECT * FROM STATISTIKA');
   DataModule2.IBQuery13.SQL.Add('WHERE тут незнаю что ');
   DataModule2.IBQuery13.Params[0].Value:='';
   datamodule2.IBQuery13.Params[0].Value:=data;
   datamodule2.IBQuery13.Params[1].Value:='';
   datamodule2.IBQuery13.Params[1].AsDateTime:=DateTimePicker1.Time;
   datamodule2.IBQuery13.Params[2].Value:='';
   DataModule2.IBQuery13.Params[2].AsDateTime:=DateTimePicker2.Time;
   datamodule2.IBQuery13.open;
 end
 else
 begin
   DataModule2.IBQuery13.SQL.Add('SELECT * FROM STATISTIKA WHERE DATA = :data');
   DataModule2.IBQuery13.Params[0].Value:='';
   datamodule2.IBQuery13.Params[0].Value:=data;
   datamodule2.IBQuery13.open;
 end;



приветствую. Вообщем у меня есть календарик на форме и два маскэдита, в которых выбирается любое время. Рядом с маскэдитами галочка которая их активирует или деактивирует. Т.е. если пользователю надо будет использовать конкретный промежуток времени в добавок к дате, выбранной в календаре, чтобы он смог сделать выборку ещё и по промежутку времени. Так вот, подскажите запрос который выберет по 3 условиям, т.е. по дате указанной в календаре, и по промежутку времени между DateTimePicker1.Time и DateTimePicker2.Time. Спасибо.
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627012
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShnaizerТак вот, подскажите запрос который выберет по 3 условиям, т.е. по дате указанной в календаре, и по промежутку времени между
а в чем затык? если дата календаря входит в промежуток, то по ней нет смысла искать, все равно она попадет в результат. Если не входит, то тогда field1 = date1 or (field2 > date2 and field2 <date3). или field1 = date1 or (field2 between date2 and date3).
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627017
Shnaizer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kdv,

как это нет смысла искать. у меня в одном случае выбираются заказы одной даты указанной в календаре, а в другом(если галочка стоит) промежуток времени в конкретный день. если этот день не указать в календаре то он выдаст мне этот промежуток из всех дней что уж точно никому ненадо)
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627018
Shnaizer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а затык в том что я не шарю как несколько условия оформлять с параметрами
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627028
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shnaizer я не шарю как несколько условия оформлять с параметрами
точно так же, как и одно условие, которое есть в приведенном коде. Да и я написал, что указать в where, разве что так правильнее
field1 = :date1 or (field2 > :date2 and field2 <:date3)

и не надо к параметрам обращаться по номерам. Нужно по имени (ParamByName). И также не надо параметрам вначале присваивать пустые строки.
http://www.ibase.ru/devinfo/ibx.htm#ibquery
см. "параметризированные запросы". кстати, я и помыслить не мог, что у кого-то будут сложности с написанием and и or в where.
http://www.w3schools.com/sql/sql_and_or.asp
никакой разницы между значениями и параметрами тут нет.

Shnaizerа в другом(если галочка стоит) промежуток времени в конкретный день.
то были даты, теперь промежуток времени. Мне все равно, какие там у вас проблемы, это ваша задача, не моя. Поэтому и не моя цель выколупывать из вас подробности для решения вашей же проблемы.
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627032
Shnaizer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
помоему я сообщил достаточно подробностей) а насчет вашего примера вы не поняли опять что мне нужно. во втором запросе нужнО знать И дату И промежуток времени (не или), блин.
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627065
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shnaizerво втором запросе нужнО знать И дату И промежуток времени (не или), блин.

"И" переводится на английский как "AND".
В чём твоя проблема-то?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627084
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shnaizer,

дата и время по конкретной дате? Выбираете дату, выбираете время, склеиваете, получаете timestamp от, и timestamp до. between или and.
Я никак не могу понять, в чем у вас проблема. Возможно, она настолько проста, что и в голову не приходит, что это может быть проблемой.
Если вы можете сформулировать запрос на русском языке, то перевести его на английский (where ... and ... or...) проблем не составит.
...
Рейтинг: 0 / 0
запрос промежуток времени
    #38627421
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Shnaizer у меня в одном случае выбираются заказы одной даты указанной в календаре, а в другом(если галочка стоит) промежуток времени в конкретный день. Это одно и то же.
Одна дата в календаре, это промежуток времени в конкретный день, с началом 00:00:00 и концом в 23:59:59
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / запрос промежуток времени
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]