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

uporedjivanje tabela

[es] :: PHP :: uporedjivanje tabela

[ Pregleda: 2996 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

casanova
Marko Savic
Zemun

Član broj: 39726
Poruke: 20
*.sbb.co.yu.

Sajt: www.bgdream.com


Profil

icon uporedjivanje tabela10.03.2005. u 12:06 - pre 232 meseci
dakle, treba mi code koji bi mi uporedjivo dve tabele sa istim poljima unutar jedne baze i prikazivao onu tabelu u kojoj je neko polje manje ili vece nego u ovoj drugoj (npr. onu gde polje PROCENAT ima vecu vrednost)...
Google je majka programiranja!
 
Odgovor na temu

cartmanlee
cartmanlee
FLEX/PHP specijalist, Adobe UG Manager
Zagreb

Član broj: 50997
Poruke: 436
*.xnet.hr.

Sajt: www.zgflex.org


+1 Profil

icon Re: uporedjivanje tabela10.03.2005. u 18:56 - pre 232 meseci
Hm, da li ti tablice imaju isti broj redaka? Koliko sam shvatio, ti bi htio da ti se ispisuje redak ili iz prve ili iz druge tablice.

Nešto tipa ovog


Tablica 1 Tablica 2
| postotak1 | | postotak1 |
| 44.56 | | 52.22 |
| 14.50 | | 12.22 |
| 24.22 | | 22.22 |
| 34.50 | | 34.50 |


Ako je potrebno ispisati manju vrijednost onda bi rezultat ispisa bio:

44.56
12.22
22.22
34.50

Ako je to to, onda jednostavno prvo SQL upitom dohvati podatke iz jedne tablice i stavi ih u array(). Onda dohvati podatke iz druge i stavi ih u drugi array.
Znači, imaš array1 i array2, koji su istih dimenzija, odnosno imaju isti broj redaka. E sad, ne znam da li ćeš dobiti 1D ili 2D array, ali onda bi trebao napraviti nešto tipa ovoga
$rezultat=array();

for ($i=0;$i<count($array1))
{
if ($array1[$i]>$array2[$i])
array_push($rezultat,$array2[$i]);
else
array_push($rezultat,$array1[$i]);
}

i onda u arrayu $rezultat imaš sve najmanje vrijednosti.


Nadam se da je to što trebaš.
 
Odgovor na temu

casanova
Marko Savic
Zemun

Član broj: 39726
Poruke: 20
*.sbb.co.yu.

Sajt: www.bgdream.com


Profil

icon Re: uporedjivanje tabela10.03.2005. u 19:37 - pre 232 meseci
nesto tako ali mislim da to nije bas ono sto sam pitao.
da probamo ovako... imamo dve tabele... npr:

tabela 1 tabela 2


[ime] [cena] [ime] [cena]

lucky strike 65 lucky strike 70
marlboro 80 marlboro 85



i sada, meni treba kod koji ce da uporedi ove dve tabele i da uzme vrednosti
ime i cena iz one tabele gde je cena manja. znaci, u slucaju da me interesuje samo marlboro treba da mi izdvoji marlboro 80... tako nesto, malo je nerazumljivo ali sta da radim:)
Google je majka programiranja!
 
Odgovor na temu

_owl_

Član broj: 318
Poruke: 1043
*.verat.net.



+3 Profil

icon Re: uporedjivanje tabela10.03.2005. u 22:28 - pre 232 meseci
Pa nauci SQL Posebno obrati paznju na mogucnost spajanja tabela (pri cemu ako ti obe tabele nemaju iste redove, treba dodatno da se potrudis da dobijes zeljeni upit). Iz samog SQL-a mozes da odradis da ti se selektuje samo zeljeni postotak (SQL je pravi jezik podrzava i uslovljavanje preko IF strukture).
Elem da skratim pricu treba da izvrsis spajanje dve tabele koje imas i da pomocu IF-a selektujes manju ili vecu vrednost kolone postotak (sta ti vec treba).

Owl
 
Odgovor na temu

cartmanlee
cartmanlee
FLEX/PHP specijalist, Adobe UG Manager
Zagreb

Član broj: 50997
Poruke: 436
*.xnet.hr.

Sajt: www.zgflex.org


+1 Profil

icon Re: uporedjivanje tabela13.03.2005. u 09:50 - pre 232 meseci
Citat:
casanova: nesto tako ali mislim da to nije bas ono sto sam pitao.
da probamo ovako... imamo dve tabele... npr:

tabela 1 tabela 2


[ime] [cena] [ime] [cena]

lucky strike 65 lucky strike 70
marlboro 80 marlboro 85



i sada, meni treba kod koji ce da uporedi ove dve tabele i da uzme vrednosti
ime i cena iz one tabele gde je cena manja. znaci, u slucaju da me interesuje samo marlboro treba da mi izdvoji marlboro 80... tako nesto, malo je nerazumljivo ali sta da radim


Ako je ovakva situacija onda sa dva upita dohvati vrijednosti iz obje tablice.
SELECT cena FROM tabela1 WHERE ime='marlboro'
SELECT cena FROM tabela2 WHERE ime='marlboro'

i onda usporedi dvije dohvaćene vrijednosti.
nisam sto posto siguran, možeš možda i ovo napraviti (probudio sam se, pa mi se ne da testirati ) )
SELECT tabela1.cena, tabela2.cena
FROM tabela1, tabela2
WHERE tabela1.ime=tabela2.ime
AND tabela2.ime='Marlboro'

Onda bi kao rezultat trebao dobiti 2 broja i onda usporedi ih. Ako bi htio dobiti samo jedan broj, onda bi trebao koristiti ugrađene procedure, a ne znam da li one postoje u MySQL (pretpostavljam da koristiš tu bazu), jer ne koristim MySQL, već PostgreSQL, koji je po meni najmoćnija opensource baza.

Ovaj primjer je kada želiš dohvatiti samo jedan proizvod, ako bi htio dohvat svih najmanjih cijena, onda koristi upute iz mog ranijeg posta.


 
Odgovor na temu

casanova
Marko Savic
Zemun

Član broj: 39726
Poruke: 20
*.nat-pool.bgd.sbb.co.yu.

Sajt: www.bgdream.com


Profil

icon Re: uporedjivanje tabela13.03.2005. u 15:47 - pre 232 meseci
snasao sam se, nesto slicno sam i upotrebio...:)
hvala u svakom slucaju. poz!
Google je majka programiranja!
 
Odgovor na temu

[es] :: PHP :: uporedjivanje tabela

[ Pregleda: 2996 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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