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

select u dve tabele sa inner join ...

[es] :: MySQL :: select u dve tabele sa inner join ...

[ Pregleda: 2755 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

frroggy
Novi Sad

Član broj: 26282
Poruke: 86
..mtsns-ns.customer.sbb.co.yu.



Profil

icon select u dve tabele sa inner join ...04.06.2006. u 01:53 - pre 217 meseci
Do sada sam koristio SQL sa prostim INTERSECT i no problemo. A sada MySQL sa "ne može intersect"...uf

Dakle,
čitao sam mnogo o ovome i da li sam malko priglup post'o ili je to posledica čitanja u ove sitne sate nakon celodnevnog rada, ko to zna...

Elem, preblem mi je sledeći:

Code:

Table: names
+----+----------+--------+
|  id  |    name   |   code  |
+----+----------+--------+
|  1   |    Pera    |    21    |
|  2   |    Mika    |    35    |
+----+----------+--------+

Table: years
+----+----------+--------+
|  id  |    year    |   code  |
+----+----------+--------+
|  8   |    1971   |    28    |
|  9   |    1975   |    21    |
+----+----------+--------+


treba mi ekvivalent sledećeg query-ja:

SELECT code FROM names WHERE name='Pera' INTERSECT SELECT code FROM years WHERE year > 1974

Ovaj upit bi trebao da vrati rezultat 21.

Kako ovo napisati sa nekim od JOIN-a?

 
Odgovor na temu

frroggy
Novi Sad

Član broj: 26282
Poruke: 86
..mtsns-ns.customer.sbb.co.yu.



Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 01:55 - pre 217 meseci
al sam nacrto tabele svaka mi dala .....

bolje da ja idem sad malo spavat, jelda
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 05:26 - pre 217 meseci
SELECT FROM names n, years y WHERE n.name = 'Pera' AND y.year >= '1971';

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

frroggy
Novi Sad

Član broj: 26282
Poruke: 86
..mtsns-ns.customer.sbb.co.yu.



Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 08:35 - pre 217 meseci
Hvala Sale,

samo mislim da treba dodati šta se selektuje:

SELECT t1.code FROM ....

a nakon toga, ako u tabeli years imam više pogodaka, toliko puta mi vrati isti rezultat, pa sam iskoristio i DISTINCT.

Kompletan query sada izgleda kao

SELECT t1.code FROM names t1, years t2 WHERE t1.name='Pera' AND t2.year > 1974

Ukoliko niko nema primedbi, primiću ovu sintaksu k znanju i koristiti je za dalj[š]e :)

Veliki pozdrav
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

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



+41 Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 08:43 - pre 217 meseci
Code:

SELECT t1.code 
FROM names t1 INNER JOIN years t2 ON t1.code = t2.code 
WHERE t1.name='Pera' AND t2.year > 1974
 
Odgovor na temu

frroggy
Novi Sad

Član broj: 26282
Poruke: 86
..mtsns-ns.customer.sbb.co.yu.



Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 09:38 - pre 217 meseci
BINGO !!!

To je pun pogodak.

Svima mnogo zahvaljujem jer ste mi rasvetlili ovaj deo.
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 15:51 - pre 217 meseci
Eh, to sam pisao ujutru, nakon sto sam se vratio iz grada :|
Dobro da nisam vise izgresio :)

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

frroggy
Novi Sad

Član broj: 26282
Poruke: 86
..mtsns-ns.customer.sbb.co.yu.



Profil

icon Re: select u dve tabele sa inner join ...04.06.2006. u 17:41 - pre 217 meseci
eeeeeee ne lezi vraže, evo mene opet sa nastavkom problema.

ukoliko u drugoj tabeli (years) postoji više upisa sa istom vrednošću polja code, query

SELECT * FROM names t1 INNER JOIN years t2 ON t1.code=t2.code WHERE t1.name='Pera'

mi vrati n puta istu kolonu (zapravo ne istu nego sa svim poljima iz t1 i po jednim poljem iz t2 koje se menja), gde je n broj upisa u years tabeli sa istom vrednošću polja code.

Kako ovo sad da rešim?
 
Odgovor na temu

goranvuc
Goran Vucicevic
Novi Sad

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



+41 Profil

icon Re: select u dve tabele sa inner join ...07.06.2006. u 18:49 - pre 217 meseci
Cekaj, pa sta ti sad treba SQL da vrati: samo Code ili sve kolone? Ako ti treba samo code onda u onaj moj SQL dodaj samo DISTINCT i to ti je to.
 
Odgovor na temu

[es] :: MySQL :: select u dve tabele sa inner join ...

[ Pregleda: 2755 | Odgovora: 8 ] > FB > Twit

Postavi temu Odgovori

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