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

Kako iz DB izvuci određen broj podataka?

[es] :: MS SQL :: Kako iz DB izvuci određen broj podataka?

[ Pregleda: 2225 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

CallMeSaMaster

Član broj: 43611
Poruke: 466
*.europronet.ba.



+1 Profil

icon Kako iz DB izvuci određen broj podataka?23.11.2006. u 18:25 - pre 180 meseci
U bazi imam nekoliko tabela.Svaka od tiha tabela recimo sadrzi po neki broj kolona koj mi trebaju da bi izracunao neku vrijednost.

Recimo tabela1 sadrzi kolonu pozicija
tabela2 tezina
tabela3 visina


recimo da ja po nekom algoritmu trebam izracunati rezultat=pozicija*2+tezina*0.5+visina*0.25
Sada trebam da izlistam u datagrid samo 10 najvecih rezultata

Kako mogu to da uradim?
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.dialup.neobee.net.



+41 Profil

icon Re: Kako iz DB izvuci određen broj podataka?23.11.2006. u 18:29 - pre 180 meseci
U tvom pitanju nije jasna relacija izmedju tabela 1, 2 i 3. Moras detaljnije objasniti problem.

Pozdrav!
 
Odgovor na temu

CallMeSaMaster

Član broj: 43611
Poruke: 466
*.europronet.ba.



+1 Profil

icon Re: Kako iz DB izvuci određen broj podataka?23.11.2006. u 18:51 - pre 180 meseci
Evo primjer ako nisam bas bio jasan.

Imam tabelu Korisnik

Id Ime Visnina Tezina pozicija
---------------------------------------------
1 Iks 199 93 2
2 Ipsilon 193 94 1
3 Beta 188 78 4
4 Gama 190 89 3


I sledece tabele

Tabela 1

Visina KoeficijentVisina
-------------------
197 2
198 2.2
199 2.5
itd

Tezina KoeficijentTezina
-------------------------
94 1.6
95 1.7
96 1.8


Pozicija KoeficijentPozicija
---------------------------
1 10
2 9
3 8
itd

Sada trebam recimo da ispisem imena 10 korisnika koji imaju najveci rezultat a koji se dobije racunanjem:
Rezultat=Visina*KoeficijentVisin+Tezina*KoeficientTezina+KoeficijentPozicija

Kako da display sada tih 10?

Nadam se da je jasnije
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

Član broj: 4934
Poruke: 1846
*.dialup.neobee.net.



+41 Profil

icon Re: Kako iz DB izvuci određen broj podataka?23.11.2006. u 19:12 - pre 180 meseci
Ako sam te dobro shvatio, imas tri tabele koeficijenata, u kojima su moguce vrednosti i odgovarajuci koeficijenti. Ako je to tako, onda je stvar vrlo jednostavna:
Code:

SELECT TOP 10 Ime, (Korisnik.Visina * KoeficijentVisina + Korisnik.Tezina * KoeficijentTezina + KoeficijentPozicija) AS Rezultat 
FROM Korisnik 
INNER JOIN Visine ON Korisnik.Visina = Visine.Visina 
INNER JOIN Tezine ON Korisnik.Tezina = Tezine.Tezina 
INNER JOIN Pozicije ON Korisnik.Pozicija = Pozicije.Pozicija
ORDER BY Rezultat DESC

Bio sam tako slobodan da tabele 1, 2 i 3 imenujem "smisleno".

Ako ima neka greska, izvini, nisam probao.
 
Odgovor na temu

[es] :: MS SQL :: Kako iz DB izvuci određen broj podataka?

[ Pregleda: 2225 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

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