Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 12 odgovora
  • 10.414 pregleda

Najnovija ↓

MySQL i ugnjezdeni upiti 08.01.2001. u 08:34 · pre 314 meseci #1
Rade li uopste ugnjezdeni upiti (mislim na SELECT ... u okviru drugog SELECT-a) u MySQL-u?
Znam da ranije verzije to nisu podrzavale, ali zna li neko da li je to sada dostupno, i kako to radi?

Hvala unapred...
Re: MySQL i ugnjezdeni upiti 08.01.2001. u 15:22 · pre 314 meseci #2
Trenutno ne rade ali su na to-do listi za sledecu verziju ili neku skorasnju uglavnom. Subselect je verovatno najvise zamerana stvar MySQL-u.

Zasto do sada nije implementirano? Jednostavno - ceo MySQL je pravljen da radi izuzetno brzo i sve je optimizovano koliko se moglo. Subselect dosta usporava rad i treba ga sto manje koristiti. Sve se moze postici join-ovima, to je barem lako. Razmisli malo. Ako ti treba primer reci cu ti ali ko zna kako radi left join znace i ovo da resi sigurno. Tako da subselect ostaje uglavnom nepotreban i prespor. Mozda ce cak i kad ga implementiraju biti neka vrsta join-a jer sigurno nece dozvoliti da im nesto tako uspori ovako brzu bazu :)
Re: Re: MySQL i ugnjezdeni upiti 10.01.2001. u 09:48 · pre 314 meseci #3
Citat:
Gojko wrote:
Jednostavno - ceo MySQL je pravljen da radi izuzetno brzo i sve je optimizovano koliko se moglo. Subselect dosta usporava rad i treba ga sto manje koristiti. Sve se moze postici join-ovima, to je barem lako.


Hvala na odgovoru, nego kad smo vec kod JOIN-a... Kakva su vam iskustva sa OUTHER JOIN-om?
Re: Re: MySQL i ugnjezdeni upiti 10.01.2001. u 15:06 · pre 314 meseci #5
Citat:
Gojko wrote:
nema tu iskustva, znam kako se koristi. jel te zanima ?


Hvala, za sada mi samo treba potvrda da to sljaka bez problema (sto naravno nije cudno za MySQL :))
Ovde se lozimo neko vreme da prebacimo neke stvari sa Oracle-a, pa da vidimo ko je brzi 8)...
Re: Re: MySQL i ugnjezdeni upiti 25.04.2001. u 11:55 · pre 310 meseci #7
Citat:
Gojko wrote:
Sve se moze postici join-ovima, to je barem lako. Razmisli malo. Ako ti treba primer reci cu ti ali ko zna kako radi left join znace i ovo da resi sigurno. Tako da subselect ostaje uglavnom nepotreban i prespor. Mozda ce cak i kad ga implementiraju biti neka vrsta join-a jer sigurno nece dozvoliti da im nesto tako uspori ovako brzu bazu :)


ne moze... podupiti sluze za stvari tipa:
DELETE FROM user WHERE user_id in (SELECT user_id_user FROM user_group WHERE group_id_group = 5);

[Ovu poruku je menjao naum dana 04-25-2001 u 10:56 AM GMT]
Re: MySQL i ugnjezdeni upiti 14.05.2001. u 22:56 · pre 310 meseci #8
PostgreSQLd - mogu ugnjezdeni upiti, medjutim mnogi kazu da je sporiji od MySQL... Imam ih oba instalirana, ali nisam poredio brzine :)

Zasto koristiti MySQL kada postoji i drugo opensource resenje... Usput, PostgreSQLd je Objektna baza (ne znam mnogo o tome, ali to je novija vrsta relacione baze, mozda ce ta informacija znaciti nekome ko se time bavi :).
Potpis
Možda se moje mišljenje promenilo, ali ne i činjenica da sam u pravu.
Re: Re: MySQL i ugnjezdeni upiti 16.05.2001. u 15:50 · pre 309 meseci #9
MySql u novim verzijama ima tabele kod kojih rade transakcije.
Postgres treba da bude malo sporiji od mysql-a ali to mu ne smanjuje upotrebljivost. Ima nasledjivanje tabela, nizove kao polja i sl. ...

Potpis
mire@zwer:~$ traceroute zivot.sloboda.potraga-za-srecom
Re: MySQL i ugnjezdeni upiti 18.05.2001. u 09:00 · pre 309 meseci #10

Kad smo vec kod topic-a... kako u MySQL-u da realizujem upit tipa:

SELECT polje FROM tabela WHERE polje NOT IN (SELECT polje2 FROM tabela2);

Pomagajte, ovo me mucilo nocas u p* materinu!!! :(


P.S. Nije valjda da je nemoguce? :(
Potpis
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
Re: Re: MySQL i ugnjezdeni upiti 25.05.2001. u 12:27 · pre 309 meseci #11
Citat:
mika je napisao:

Kad smo vec kod topic-a... kako u MySQL-u da realizujem upit tipa:

SELECT polje FROM tabela WHERE polje NOT IN (SELECT polje2 FROM tabela2);

Pomagajte, ovo me mucilo nocas u p* materinu!!! :(


P.S. Nije valjda da je nemoguce? :(


A jel' mora bas u MySQL-u ?
Iz, recimo, PHP-a ne bi bio neki problem...
Re: Re: MySQL i ugnjezdeni upiti 25.05.2001. u 19:13 · pre 309 meseci #12

npr. ovako:

select tabela.polje from tabela left join tabela2 on tabela.polje=tabela2.polje2 where tabela2.polje is null;

ovo je left join koji simulira subquery.

ako nemas persistant database konekcije normalno pokrenes prvi upit, smestis rezultat u neku promenljivu (znam da ovo radi ali nisam ulazio dublje u tematiku) i pokrenes drugi upit.

Ili mozes da se snadjes ako radis iz programskog jezika iz koga koristis mysql npr. da sve smestis u neku promenljivu tog jezika pa onda pokrenes drugi upit.

Citat:
mika je napisao:

Kad smo vec kod topic-a... kako u MySQL-u da realizujem upit tipa:

SELECT polje FROM tabela WHERE polje NOT IN (SELECT polje2 FROM tabela2);

:(

Potpis
mire@zwer:~$ traceroute zivot.sloboda.potraga-za-srecom
Re: MySQL i ugnjezdeni upiti 28.05.2001. u 09:23 · pre 309 meseci #13
Hvala ljudi.

Topic sam pregledao sa zakašnjenjem a za left join nisam znao, pravo da vam kažem. U stvari znao sam šta je ali ne i kako se koristi...

U međuvremenu sam se snašao baš kao što je neko napisao u prethodnim postovima - u dve petlje, i to tako što u spoljašnjoj prihvatam rezultat prvog upita a u unutrašnjoj na osnovu tog rezultata "filtriram" drugi upit.

Naravno, elegantnije je rešenje preko samo jednog upita.

P.S. Koja je razlika između levog i desnog spajanja ???

[Ovu poruku je menjao mika dana 05-28-2001 u 08:28 AM GMT]
Potpis
Bolje 100 godina biti milioner nego nedelju dana siromašak
(c) Alan ford
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme