|
SQL baze podataka - Sponzor: Baze-Podataka.net MySQL, MSSQL, Oracle, Access, ODBC. Ako imate problem brže i preciznije ćete dobiti odgovor ako priložite strukturu tabela ili skript koji kreira tabele i puni ih test podacima umesto što to problem opisujete samo rečima. Sponzor: Baze-Podataka.net - Blog o bazama podataka |
|
Alati teme | Način prikaza |
22. 07. 2011. | #21 |
profesionalac
Qualified
Datum učlanjenja: 23.06.2005
Poruke: 196
Hvala: 35
35 "Hvala" u 30 poruka
|
Bez obzira što regexp možda rešava problem, rešenje koje si izabrao (niz podataka u istom polju) je jako loše, vodiće te iz problema u problem, a cena regexp-a i sličnih prinudnih rešenja biće velika.
Poslušaj savet koji si dobio, napravi junction tabelu i ne brini za njenu veličinu - 100k zapisa je sasvim normalno za takvu tabelu. |
2 članova zahvaljuje dacha za poruku: |
22. 07. 2011. | #22 |
expert
Grand Master
Datum učlanjenja: 11.04.2010
Poruke: 998
Hvala: 141
959 "Hvala" u 153 poruka
|
Regex na 1000 oglasa će te koštati kao 100 000 000 ovamo Može i nekako proći sad ali vjeruj mi što budeš odmakao sve će te više koštati što nisi sad tako uradio. Ja sam radio na takvom jednom siteu za oglase, sad ima nekoliko stotina hiljada oglasa i ne možeš ga po pola sata otvoriti. Mislim nisam ja to radio ali tako jeste
Poslednja izmena od webarto : 22. 07. 2011. u 15:04. |
"Hvala" webarto za poruku: |
22. 07. 2011. | #23 |
profesionalac
Qualified
Datum učlanjenja: 02.05.2009
Poruke: 193
Hvala: 27
8 "Hvala" u 6 poruka
|
Poslusacu vas, s obzirom da nemam iskustva sa velikim brojem upisa i sa velikim posetama sajta.
|
22. 07. 2011. | #24 |
Boban Karišik
Expert
|
Stavi da ti oba polja u novoj tabeli budu index-i, i vozi..
__________________
Ako već nisi Anđeo, bar budi čovek... |
22. 07. 2011. | #25 |
expert
Grand Master
Datum učlanjenja: 11.04.2010
Poruke: 998
Hvala: 141
959 "Hvala" u 153 poruka
|
Pazi ovo...
Kôd:
Showing rows 0 - 29 (765,665 total, Query took 0.0003 sec) PHP kôd:
Kôd:
Showing rows 0 - 29 (9,086 total, Query took 0.0871 sec) PHP kôd:
Kôd:
Showing rows 0 - 29 (9,086 total, Query took 0.0002 sec) |
22. 07. 2011. | #26 |
profesionalac
Qualified
Datum učlanjenja: 02.05.2009
Poruke: 193
Hvala: 27
8 "Hvala" u 6 poruka
|
Shvatam, al ne kao i vi, treba mnogo da ucim jos.
vidim da je brzina kod REGEXP mnogo manja. Nego, sad novi problemi sa ovom novom tabelom. Postavio sam ja indexe za obe kolone. Kad se npr. menja oglas i pri toj izmeni se doda na vec postojece gradove, jos njih nekoliko, kako da ne duplira ID za vec upisane gradove, vec da upise samo ove nove dodate. Takodje, kad se odcekiraju neki gradovi, kako da te gradove povatam po tabeli i samo njih pobrisem. |
22. 07. 2011. | #27 |
Boban Karišik
Expert
|
Mozes lako da obrises sve gradove vezane za taj oglas, i onda upises nove (isto vazi i kad brises)
__________________
Ako već nisi Anđeo, bar budi čovek... |
"Hvala" Blood za poruku: |
22. 07. 2011. | #28 |
profesionalac
Qualified
Datum učlanjenja: 02.05.2009
Poruke: 193
Hvala: 27
8 "Hvala" u 6 poruka
|
Hahaha, vidi stvarno, ludnica!
|
22. 07. 2011. | #29 |
profesionalac
Qualified
Datum učlanjenja: 23.06.2005
Poruke: 196
Hvala: 35
35 "Hvala" u 30 poruka
|
Hmm, mislim da nisi shvatio za indekse - ne poseban indeks na obe kolone, nego jedan indeks na te dve kolone. Znači, mogu da se dupliraju vrednosti u svakoj koloni, ali svaka kombinacija vrednosti te dve kolone mora da bude jedinstvena.
|
22. 07. 2011. | #30 | |
profesionalac
Qualified
Datum učlanjenja: 02.05.2009
Poruke: 193
Hvala: 27
8 "Hvala" u 6 poruka
|
Citat:
sad sam stavio ovako: CREATE TABLE IF NOT EXISTS `oglas_grad` ( `oglas` int(20) NOT NULL, `grad` int(4) NOT NULL, UNIQUE KEY `oglas` (`oglas`,`grad`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; Poslednja izmena od martinluter : 22. 07. 2011. u 18:25. |
|
|
|