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

Pomoc oko zadataka

[es] :: MS SQL :: Pomoc oko zadataka

[ Pregleda: 3296 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Pomoc oko zadataka24.06.2014. u 22:53 - pre 119 meseci
Treba mi pomoc oko dizajna baze i select upita i pod upita

Potrebno je kreirati bazu podataka za prodavnicu mobilnih telefona. Baza treba da sadrži
proizvođače mobičnih telefona, prodavce mobilnih telefona (ime radnje, adresa, telefon), i modele mobilnih
telefona (ime modela, opis, cena i količina na lageru). Za ovakvu bazu podataka:

Nacrtati dizajn baze podataka sa definisanim imenima tabela i strukturom podataka po
kolonama.


Prikaz prodavnice koja ima najjeftini model telefona CC11


Ja sam napravio tabele Proizvodjac (ProizvodjacID, NazivProizvodjaca) Prodavnica (ProdavnicaID,ImeRadnje,Adresa) Model (ModelID,Opis,ProizvodjacID,ImeModela)
ProdavnicaModel(ProdavnicaModelID,Lager,Cena,ProdavnicaID,ModelID)

Ne znam kako da napravim ovaj gore upit da mi vrati prodavnicu sa najjeftinijim modelom telefona CC11

Hitno je !
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:02 - pre 119 meseci
Dobio sam rezultat

SELECT ImeRadnje
FROM Prodavnica
WHERE ProdavnicaID =( select ProdavnicaID from ProizvodjacModel where Cena=10 )


ali ja zelim da ne gadjam minimalnu cenu tako sto vidim koja je minimalna cena vec zelim da na osnovu funkcije MIN to meni sam dinamicki obradi SQL upit.
Da li ima koga da mi pomogne?
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
109.121.55.*

Sajt: www.drinacoding.com


+14 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:19 - pre 119 meseci
Code:

SELECT p.ImeRadnje FROM Prodavnica p INNER JOIN ProizvodjacModel pm ON p.ProdavnicaID = pm.ProdavnicaID
WHERE pm.Cena = (SELECT MIN(pm1.Cena) FROM ProizvodjacModel pm1)
 
Odgovor na temu

HladankaoLed
Database Consultant
Vienna, Austria

Član broj: 228937
Poruke: 36
195.72.132.*

Sajt: milossql.wordpress.com


+1 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:27 - pre 119 meseci
S obzirom da nema koda za kreiranje tabela i test podataka, evo napamet koda koji bi trebalo da radi sa prilozenim db dizajnom.

Code:

SELECT ImeRadnje
FROM Prodavnica
WHERE ProdavnicaID = (
    SELECT TOP 1 ProdavnicaID 
    FROM ProdavnicaModel pm
    INNER JOIN Model m ON pm.ModelID = m.ModelID
    WHERE m.ImeModela = 'CC11'
    ORDER BY Cena ASC) 


HTH.
Sad šta je tu je. A možda će da dođe i ova tvoja tetka iz Bosanske Krupe.
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:40 - pre 119 meseci
Da li moze da se to uradi bez INNER JOIN ? Nisam zeleo da koristim INNER JOIN?

Dakle samo UPIT I PODUPIT
 
Odgovor na temu

Dusan Kondic
Programer
ZR "Parametar" Ljubovija
Ljubovija

Član broj: 49961
Poruke: 225
109.121.55.*

Sajt: www.drinacoding.com


+14 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:41 - pre 119 meseci
Da, i ja sam kucao napamet pa sam izostavio ime modela u WHERE klauzuli. Pitanje je trebalo malo bolje obrazložiti.
Neću prekucavati jer rešenje koje je ponudio HladanKaoLed treba da je u redu.
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:43 - pre 119 meseci
Izvukao bi ja to kroz INNER JOIN spojio bi se na tabele i izvukao sta mi treba.
Ali ja zelim bez inner join samo upit i pod upit sa MIN(cena) da dobijem minimalnu cenu koju dinamicki SQL izvuce i prokaze u kojoj radnji je minimalna cena mobilnog telefona.
Moj gornji upit vraca radnju gde je minimalna cena mobilnog telefona, ali samo kada ja vidim u tabeli fizicki gde je minimalna cena i gadjam tu cenu,meni treba dinamicki ako je moguce
 
Odgovor na temu

HladankaoLed
Database Consultant
Vienna, Austria

Član broj: 228937
Poruke: 36
195.72.132.*

Sajt: milossql.wordpress.com


+1 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:46 - pre 119 meseci
Moram da priznam da ne razumem insistiranje na izbegavanju JOIN-a, ali ovo bi trebalo da bude ekvivalentno gore postovanom resenju:

Code:
SELECT ImeRadnje
FROM Prodavnica
WHERE ProdavnicaID = (SELECT TOP 1 ProdavnicaID FROM ProdavnicaModel WHERE ModelID = (SELECT ModelID FROM Model WHERE ImeModela = 'CC11') ORDER BY Cena ASC) 



Sad šta je tu je. A možda će da dođe i ova tvoja tetka iz Bosanske Krupe.
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 10:50 - pre 119 meseci
Drugi problem

Baza pozoriste
Potrebno je kreirati bazu podataka za pozorište. Baza treba da sadrži spisak svih predstava u pozorištu(ime predstave, glumce, opis, zanr) i repertoar(raspored predstava po danina)

Imam tabele Glumci (GlimaciID,Ime,Prezime)
PredstavaDatum (PredstavaDatumID,PredstavaID,Datum)
PredstavaGlumac (PredstavaGlumacID,PredstavaID,GlumacID)
Predstave (PredstaveID,ImePredstave,Opis,ZanrID)
Zanr (ZanrID,OpisZanra)

Ispisi ime predstave gde igra Pera Peric

Moj upit meni vraca uporno sve prdstave koje postoje iako igra u samo jednoj predstavi dakle samo podupiti bez JOIN-A

SELECT ImePredstave
FROM Predstave
WHERE PredstaveID = (SELECT TOP 1 PredstaveID FROM PredstavaGlumac
WHERE GlumacID = (SELECT GlumacID FROM Glumci WHERE Ime='Pera' and Prezime='Peric')



[Ovu poruku je menjao Qler01 dana 25.06.2014. u 14:25 GMT+1]
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 13:25 - pre 119 meseci
Drugi problem

Baza pozoriste
Potrebno je kreirati bazu podataka za pozorište. Baza treba da sadrži spisak svih predstava u pozorištu(ime predstave, glumce, opis, zanr) i repertoar(raspored predstava po danina)

Imam tabele Glumci (GlimaciID,Ime,Prezime)
PredstavaDatum (PredstavaDatumID,PredstavaID,Datum)
PredstavaGlumac (PredstavaGlumacID,PredstavaID,GlumaciID)
Predstave (PredstaveID,ImePredstave,Opis,ZanrID)
Zanr (ZanrID,OpisZanra)


Ispisi ime predstave gde igra Pera Peric

Moj upit meni vraca uporno sve prdstave koje postoje iako igra u samo jednoj predstavi dakle samo podupiti bez JOIN-A


SELECT ImePredstave
FROM Predstave
WHERE PredstaveID = (SELECT TOP 1 PredstaveID FROM PredstavaGlumac
WHERE GlumacID = (SELECT GlumaciID FROM Glumci WHERE Ime='Pera' and Prezime='Peric')


Nadam se da ste tu Hitno je
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 14:02 - pre 119 meseci
Kada dodam u WHERE klauzuli za Glumci Opis='drama' dobijem jedan rekord gde igra pera peric u toj predstavi sa opisom Drama.

>>>> WHERE GlumacID = (SELECT GlumaciID FROM Glumci WHERE Ime='Pera' AND Opis='Drama') <<<<<<<<<

Ali me buni zasto vraca sve rekorde predstava kada u WHERE klauzuli kazem Ime='pera' AND Prezime='Peric'

Ja zelim da dobijem rekord gde igra Pera Peric u Predstavi?
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka25.06.2014. u 16:25 - pre 119 meseci
Reseno problem i ID slovna greska
 
Odgovor na temu

Qler01

Član broj: 186964
Poruke: 328
*.dynamic.isp.telekom.rs.



+4 Profil

icon Re: Pomoc oko zadataka01.07.2014. u 15:26 - pre 119 meseci
Kako ja sada da dobijem

Prikaz svih modela telefona koje proizvodi Nokia



Ubio sam se pokusavajuci
evo struktura tabela

Proizvodjac(ProizvodjacID,Naziv)
Prodavnica(ProdavnicaID,Ime_Radnje,Adresa,Telefon)
Model(ModelID,Naziv,Opis,ProizvodjacID)
ProdavnicaModel(ProdavnicaModelID,Cena,Lager,ProdavnicaID,ModelID)

Select ImeModela
From Model
Where ProizvodjacID=1

Vraca mi sve modele ali nemam polje za nazivProizvodjaca u rezultatu ? Meni treba Imemodela i naziv Proizvodjaca sa listom

Pomocu JOIN sam resio ali me zanima sa strucnije strane da li moze pomocu podupita da sre to resi ako moze da mi se posalje pod upit da bi video sta je u pitanju

Select Proizvodjac.NazivProizvodjaca,Model.ImeModela
from Proizvodjac INNER JOIN Model ON Proizvodjac.ProizvodjacID=Model.ProizvodjacID
where NazivProizvodjaca='Nokia'




[Ovu poruku je menjao Qler01 dana 01.07.2014. u 16:41 GMT+1]

[Ovu poruku je menjao Qler01 dana 01.07.2014. u 16:55 GMT+1]

[Ovu poruku je menjao Qler01 dana 01.07.2014. u 16:57 GMT+1]

[Ovu poruku je menjao Qler01 dana 01.07.2014. u 17:07 GMT+1]

[Ovu poruku je menjao Qler01 dana 01.07.2014. u 17:28 GMT+1]
 
Odgovor na temu

[es] :: MS SQL :: Pomoc oko zadataka

[ Pregleda: 3296 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

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