Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

ADOQuery više uvjeta

[es] :: Pascal / Delphi / Kylix :: ADOQuery više uvjeta

[ Pregleda: 1931 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

saxa
nikolina zorica
student
zagreb

Član broj: 266531
Poruke: 55
*.adsl.net.t-com.hr.



Profil

icon ADOQuery više uvjeta23.09.2011. u 13:36 - pre 153 meseci

ovako ... tablica2 sadrži polja : ID, Naziv, Brojnost, Veličina, Vrsta, Boja

i sad ... ja bih htjela da mi izbaci samo one Nazive koji imaju :

Brojnost = 1
Veličinu = 5 ili 2
Vrstu = 3

(nisam uspila filtrirat pomoću filtera pa idem ovako)

ovo je kod koji sam napisala i on radi super ... ali kada želim ubacit ostale uvjete onda svašta izbacuje ili ništa (kako kad)

('SELECT * FROM tablica2 WHERE Brojnost like 1 order by ID');

sad bi mene interesiralo kako bi to trebalo napisat, vjerojatno griješim u sintaksi

ovo su neki primjeri koje sam isprobala:

('SELECT * FROM tablica2 WHERE Brojnost like 1 AND Vrsta like 3 AND Veličina like 5 OR 2 order by ID');
('SELECT * FROM tablica2 WHERE Brojnost = 1 AND Vrsta = 3 AND Veličina = 5 OR 2 order by ID');
('SELECT * FROM tablica2 WHERE Brojnost like 1 AND Vrsta like 3 AND Veličina like 5 OR Veličina like 2 order by ID');
 
Odgovor na temu

((BugA))
Igor Djordjevic
Bor, Srbija

Član broj: 29241
Poruke: 196
*.dynamic.isp.telekom.rs.

ICQ: 66516695
Sajt: www.MalamutKlub.com


+17 Profil

icon Re: ADOQuery više uvjeta23.09.2011. u 14:47 - pre 153 meseci
Ako zelis sva tri uslova ispunjena onda probaj ovako (obrati paznju na zagrade):
Code:
SELECT * FROM tablica2 WHERE Brojnost = 1 AND Vrsta = 3 AND (Veličina = 5 OR Veličina = 2) order by ID

Ukoliko zelis bilo koji uslov ispunjen, onda probaj ovako:
Code:
SELECT * FROM tablica2 WHERE Brojnost = 1 OR Vrsta = 3 OR Veličina = 5 OR Veličina = 2 order by ID

Pozdrav, BugA
 
Odgovor na temu

saxa
nikolina zorica
student
zagreb

Član broj: 266531
Poruke: 55
*.adsl.net.t-com.hr.



Profil

icon Re: ADOQuery više uvjeta23.09.2011. u 15:00 - pre 153 meseci
tnx radi
 
Odgovor na temu

saxa
nikolina zorica
student
zagreb

Član broj: 266531
Poruke: 55
*.adsl.net.t-com.hr.



Profil

icon Re: ADOQuery više uvjeta05.10.2011. u 12:53 - pre 152 meseci
novo pitanje ako mi neko može pomoć !!!!


ovako ... tablica2 sadrži polja : ID, Naziv, Brojnost, Veličina, Vrsta, Boja
tablica1 sadrži polja : ID0, Naziv0, Vrijeme, Oblik, Suma

i sad ... ja bih htjela da mi izbaci samo Naziv koji ima :

Brojnost = 1
Vrsta = 2

a Oblik bilo koji se izabere u ComboBoxu, a za to imam varijablu :

var OB := FloatToStr(Form2.cboOblik.ItemIndex + 1);

i sad ... što ne valja u ovom izrazu ? :

'SELECT tablica1.*, tablica2.* FROM tablica2 INNER JOIN tablica1 ON tablica2.ID = tablica1.ID0 WHERE (tablica2.Brojnost like 1) AND (tablica2.Vrsta like 2) AND (tablica1.Oblik like ''' + OB + ''') ORDER BY tablica1.Suma';
 
Odgovor na temu

Predrag Supurovic
Pedja YT9TP
Užice

Član broj: 157129
Poruke: 6279

Sajt: pedja.supurovic.net


+1570 Profil

icon Re: ADOQuery više uvjeta05.10.2011. u 12:58 - pre 152 meseci
Izgleda da ne valja to sto niste mnogo procitali o SQL jeziku a i ne citate kad vam neko objasni kako treba da uradite nego samo prepisujete bez nastonjanja da razumete sta prepisujete.
 
Odgovor na temu

savkic
Igor Savkić

Moderator
Član broj: 92186
Poruke: 2739



+92 Profil

icon Re: ADOQuery više uvjeta05.10.2011. u 14:08 - pre 152 meseci
> i sad ... ja bih htjela da mi izbaci samo Naziv koji ima :
> Brojnost = 1
> Vrsta = 2

Onda koristiš jednakost u uslovu ne LIKE.

> var OB := FloatToStr(Form2.cboOblik.ItemIndex + 1);

Kog tipa je polje Oblik, ako je numeričko onda ne treba da koristiš upoređivanje po stringu a ako je string onda se postaraj da su formatiranja jednaka (decimalni separator, broj decimala...)

> i sad ... što ne valja u ovom izrazu ? :

To ti moraš reći, da li izraz vraća rezultat ili grešku (i koju), ako daje rezultat napiši šta dobijaš a šta očekuješ.

Code:

SELECT 
  tablica1.*, tablica2.* 
FROM 
  tablica2 INNER JOIN tablica1 
    ON tablica2.ID = tablica1.ID0 
WHERE 
  (tablica2.Brojnost = 1) AND
  (tablica2.Vrsta = 2) AND 
  (tablica1.Oblik like ''' + OB + ''')  
ORDER BY 
  tablica1.Suma

 
Odgovor na temu

saxa
nikolina zorica
student
zagreb

Član broj: 266531
Poruke: 55
*.adsl.net.t-com.hr.



Profil

icon Re: ADOQuery više uvjeta05.10.2011. u 14:20 - pre 152 meseci
Javlja grešku:

Project MojProject.exe raised exception class EOleException with message: ' Syntax error in query expresion 'SELECT tablica1.*, tablica2.* FROM tablica2 INNER JOIN tablica1 ON tablica2.ID = tablica1.ID0 WHERE (tablica2.Brojnost like 1) AND (tablica2.Vrsta like 2) AND (tablica1.Oblik like ''' + OB + ''') ORDER BY tablica1.Suma' . Proccess stopped. Use Step or Run to continue.

 
Odgovor na temu

[es] :: Pascal / Delphi / Kylix :: ADOQuery više uvjeta

[ Pregleda: 1931 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.