SQL query

Dbase, sql, paradox in vse drugo kar se tiče baz.
Odgovori
Ricoh
Prispevkov: 2
Pridružen: 15.06.2011 22:31:51

SQL query

Odgovor Napisal/-a Ricoh » 15.06.2011 23:21:19

Problem je precej podoben temu :
http://stackoverflow.com/questions/5452 ... ql-problem

Razlika je da jaz uporabljam za datume parametre ki jih dobim uz pomoš 2 datetimepickerja in editboxa.
(in da ne uporabljam sql serverja ampak Access).
tabele so dve :

ROOM_TYPES
room_type (text)
room_description (text)

ROOM_RATES
room_type (text)
rate_start_date (short date)
rate_end_date (short date)
rate (currency)

nekaj podobno temu:
select * from room_rates where where room_type = :a1 and
rate between :a2 and :a3 ....... (narobe vem...)
parametri naj bi bili takole :

ADOQuery1.Parameters.ParamByname('a1').asString := edit1.text;
ADOQuery1.Parameters.ParamByname('a2').asdate := datetimepicker1.date;
ADOQuery1.Parameters.ParamByname('a3').asdate:= datetimepicker2.date;

Nikakor mi ne rata dobit rezultat kot iz navedenega linka....
lahko mi gdo pomaga sestavit pravo poizvedbo da dobim omenjeni rezultat?

odisej
Prispevkov: 1363
Pridružen: 09.05.2003 12:58:10

Re: SQL query

Odgovor Napisal/-a odisej » 16.06.2011 07:39:37

Če ti s parametri ne bo ratalo, probej direktno datum zapisat v taki obliki #mm/dd/yyyy#

Ricoh
Prispevkov: 2
Pridružen: 15.06.2011 22:31:51

Re: SQL query

Odgovor Napisal/-a Ricoh » 16.06.2011 15:09:50

Sem probal takole :

with ADOQuery1 do begin
ADOQuery1.Close;
ADOQuery1.SQL.Clear;
ADOQuery1.SQL.Add('select * from ROOM_RATES where ROOM_TYPE = :A1');
ADOQuery1.SQL.Add('and rate_Start_DATE < :a3 AND rate_End_DATE > :a2');
ADOQuery1.Parameters.ParamByName('a1').Value:= cxtextedit1.Text;
ADOQuery1.Parameters.ParamByName('a2').Value:= cxDateEdit1.Date;
ADOQuery1.Parameters.ParamByName('a3').Value := cxDateEdit2.Date;
ADOQuery1.Open;

To mi vrže samo cene za določena obdobja (znotraj parametrov datetimepickerjev).

jaz pa nebi da mi prikaže obdobja cen ampak samo ceno in to za obdobje ki je navedeno v datetimepickeri:

marjan55
Prispevkov: 2
Pridružen: 29.09.2011 16:53:14

Re: SQL query

Odgovor Napisal/-a marjan55 » 29.09.2011 16:58:06

POSKUSI S FUNKCIJO DISTINCT(CENA) namesto *

Odgovori