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

Razlika u vremenu obrade

[es] :: MySQL :: Razlika u vremenu obrade

[ Pregleda: 1203 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

jmarko2002
Jovanovic Marko
Uzice

Član broj: 10271
Poruke: 29
*.dynamic.isp.telekom.rs.



Profil

icon Razlika u vremenu obrade15.08.2011. u 17:05 - pre 94 meseci
Imam dve tabele sa istim karakteristikama, samo sa razlicitim imenima kolona, svaka tabela ima oko 20000 zapisa
kada formiram izvestaj o redovima koje ima tabela1, a nema tabela2 izvestaj dobijam odma:
Select * from tabela1 where id_t1 not in (select id_t2 from t2)

Ali, kada formiram izvestaj o redovima koje ima tabela2, a nema tabela1 izvestaj cekam dosta dugo.
select * from tabela2 where id_t2 not in (select id_t1 from t1)

tabela1:
id_t1 - varchar(4), PK
naslov - varchar(80)

tabela2:
id_t2 - varchar(4), PK
naslov - varchar(80)

U cemu moze da bude problem?

Koristim MySQL 5.5, InnoDB

Hvala!
 
Odgovor na temu

vbbojan
Atanasijevic Bojan
Digit Consulting d.o.o.
Beograd

Član broj: 31580
Poruke: 221
*.dynamic.isp.telekom.rs.

Sajt: www.digitconsulting.rs


+8 Profil

icon Re: Razlika u vremenu obrade15.08.2011. u 18:56 - pre 94 meseci
Problem je sa WHERE IN i treba ga zaobilaziti kad god se može.

Mnogo efikasnije rešenje ti je sa JOIN.
Ovaj će ti vratiti sve što ima u t1 a nema u t2:
Code:

SELECT 
  t1.Id
FROM
  t1
  LEFT OUTER JOIN t2 ON (t1.Id = t2.Id)
WHERE
  t2.Id IS NULL

Pozdrav
 
Odgovor na temu

jmarko2002
Jovanovic Marko
Uzice

Član broj: 10271
Poruke: 29
*.dynamic.isp.telekom.rs.



Profil

icon Re: Razlika u vremenu obrade15.08.2011. u 19:54 - pre 94 meseci
Probao sam upit sa JOIN, ali on je jos sporiji od WHERE IN!

Kad trazim sta nedostaje u t2 uradi za 0.05sec, a obrnuto oko 2min. Stvarno mi nije jasno u cemu je problem...
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15058
*.31.24.217.adsl2.beograd.com.

Sajt: mysql.rs


+2294 Profil

icon Re: Razlika u vremenu obrade15.08.2011. u 20:04 - pre 94 meseci
uradi explain extended za oba upita pa uporedi
 
Odgovor na temu

jmarko2002
Jovanovic Marko
Uzice

Član broj: 10271
Poruke: 29
*.dynamic.isp.telekom.rs.



Profil

icon Re: Razlika u vremenu obrade15.08.2011. u 20:47 - pre 94 meseci
Pokazao je razlike u polju type. Obrisao sam tabelu2, kreirao je ponovo, napunio zapisima i sad sljaka odlicno!

Hvala puno!!
 
Odgovor na temu

[es] :: MySQL :: Razlika u vremenu obrade

[ Pregleda: 1203 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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