малко SQL help pliizzz

2 отговора 152 прегледа
#1

малко SQL help pliizzz

значи искам да филтрирам данните между две дати но немога да съставя правилната SQL команда
ако го направя с числа :
Query1.SQL.Add('select * from xxxx where num between 10 and 20');
става
но когато опитам с дати ми дава мишмаш
полето с датите в таблицата е тип DATE
БД е Парадокс
датите ги зимам с ProfDateTimePicker1.Date

Отговор
в отговор на otoboto #2

Ползвай параметри

В такива ситуации е уместно да използваш параметри в заявката. Напиши я така:

Query1.SQL.Text := 'select * from xxxx where yyyy between :date_from and :date_to';

След това можеш да инициализираш стойностите на параметрите по индекс или по име:

Query1.Params[0].AsDateTime := FromDate;
Query1.Params[1].AsDateTime := ToDate;

Ако взимаш датата от DateTimePicker имай предвид, че неговото пропърти Date всъщност връща и час. В такъв случай горните редове ги направи така:

Query1.Params[0].AsDateTime := Trunc(dtpFrom.Date);
Query1.Params[1].AsDateTime := Trunc(dtpTo.Date);

Отговор
в отговор на andrew_nikoloff #3

Благодаря

стана , благодаря за помоща

Отговор