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

2 pitanja mysql pretraga

[es] :: MySQL :: 2 pitanja mysql pretraga

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

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Arsa_Car
Srdjan Arsic
Beograd

Član broj: 4906
Poruke: 8
*.yubc.net



Profil

icon 2 pitanja mysql pretraga03.09.2002. u 15:43 - pre 263 meseci
1.

SELECT * FROM tbl WHERE col LIKE "%problem%"

U manualu pise da LIKE nije casesensitive,
a nevraca mi redove u kojima pise npr. Problem,proBLEm
Kako da resim ovaj problem ?

koristim 3.23.32
probo sam na veratovom serveru i nesljaka na ver 3.23.38
tako da mi dzaba da menjam kuci verziju
kad nece da mi sljaka na hostu

2.
Kod "vecih" baza(npr 100.000 redova u tbl) verovatni je gornja metoda spora
Naiso sam na jedno na netu a glasi ovako u kratkim crtama:

Napravi se jos dve tabeje
Prva tabela sa unikatnim recima tabele koju pretrazujemo
Drvuga koja je M-M izmedju tabele sa recima i tabele koju pretrazujemo

Dali nemo ima neko drugo ne mnogo komplikovano resenje

Hvala!


[Ovu poruku je menjao Arsa_Car dana 03.09.2002 u 11:20 PM GMT]
Kvalitetno i kvantitetno
 
Odgovor na temu

Jbyn4e

Član broj: 422
Poruke: 6049
*.verat.net



+257 Profil

icon Re: 2 pitanja mysql pretraga03.09.2002. u 16:25 - pre 263 meseci
Ne znam tacno od koje verzije (valjda 3.23.46 ili tako nesto) NIJE case sensitive, pa ako imas prethodnu verziju (i mene je to mucilo dok nisam pronasao da sam imao stariju verziju) verovatno je to problem, bar je to bio kod mene, i posle toga je radilo case insensitive. Drugi nacin je da umesto LIKE koristis REGEXP - regular expressione. O tome promadji vise pomocu pretrazivaca, ako nisi upucen u reg. expressions-e.

Drugi deo pitanja ne mogu da odgovorim jer nisam radio sa toliko velikim tabelama, ali pretpostavljam i da izbor VRSTE baze (ima ih vise kod MySQL-a) moze da pomogne - neke vrste su bolje za vecu kolicinu podataka.

Toliko od mene, valjda ima neko upuceniji...
Kad sve ostalo zakaže, pročitaj uputstvo...
 
Odgovor na temu

ljuban
Ljubisa Punosevac
trenutno Nis

Član broj: 1755
Poruke: 131
*.bankerinter.net



Profil

icon Re: 2 pitanja mysql pretraga03.09.2002. u 20:22 - pre 263 meseci
Na prvo pitanje ne mogu da ti odgovorim jer nisam radio sa MySQL-om. Sto se tice drugog pitanja, resenja postoje. Jedno si rekao. Za neka druga resenja treba da znam koja su polja u tabeli (mislim na primarni kljuc, unique, not null i sve ostalo). Performanse zavise od vrste upita koje se koriste. Prost primer je sledeci:
Za Oracle kada se cesto izvrsavaju upiti sa spajanjem tabela ako upit izgleda kao
select ... from ... where ... = ...; onda tabele koje se spajaju grupisu ili spoje u klaster (nema veze sa klasterom racunara). Ovde se radi o veoma velikim tabelama koje imaju po vise stotina hiljada slogova. Ako na primer upit glasi
select ... from ... where ... > ... onda ako bi tabele povezao u klaster performanse bi se drasticno smanjile. Ako ces da imas svakojake upite onda ce i resenja da budu razlicita.

Pozdrav
 
Odgovor na temu

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
62.162.102.*

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: 2 pitanja mysql pretraga04.09.2002. u 11:39 - pre 263 meseci
Resenje je veoma prosto, ne trebaju ti dve tabele i slicne gluposti,
treba ti samo FULLTEXT index na polja za pretragu, FULLTEXT radi
veoma brzo, i vraca rejting za dobijenih reci. U prilogu FULLTEXT search-a
imas i listu reci koje zelis ignorirati sa pretrage, kao i,na,se,uz,za,iz,ti ....
bolje pogledaj
http://www.mysql.com/doc/en/Fulltext_Search.html
http://www.mysql.com/doc/en/Fulltext_Fine-tuning.html

i sve sto mozes naci o fulltext na www.mysql.com
People who think they know everything tend to irritate those of us who do.
 
Odgovor na temu

Gojko Vujovic
Amsterdam, NL

Administrator
Član broj: 1
Poruke: 13651



+165 Profil

icon Re: 2 pitanja mysql pretraga04.09.2002. u 20:28 - pre 263 meseci
1. Probaj ovako:
SELECT * FROM tbl WHERE LOWER(col) LIKE "%problem%"
 
Odgovor na temu

Arsa_Car
Srdjan Arsic
Beograd

Član broj: 4906
Poruke: 8
*.yubc.net



Profil

icon Re: 2 pitanja mysql pretraga05.09.2002. u 02:26 - pre 263 meseci
SELECT * FROM tbl WHERE LOWER(col) LIKE "%problem%"
Da to je to !
cak zavrsava posao i ako je ....LIKE"%PrOBLem%"
hvala
u medjuvremenu sam pronaso da radi i
SELECT * FROM tbl WHERE col REGEXP "problem"

SA FULLTEXT indexom mi nikako nije islo
uvek mi vraca nula redova cak sam probo i primer iz manuala
Kvalitetno i kvantitetno
 
Odgovor na temu

Arsa_Car
Srdjan Arsic
Beograd

Član broj: 4906
Poruke: 8
*.yubc.net



Profil

icon Re: 2 pitanja mysql pretraga05.09.2002. u 17:23 - pre 263 meseci
Evo napokon sa mu naso caku
zavrsava posao
i FULLTEXT
hvala svima
Kvalitetno i kvantitetno
 
Odgovor na temu

Riste Pejov
Team Leader/Senior Software Developer @
Ein-Sof ltd Skopje
Skopje, Macedonia

Član broj: 128
Poruke: 571
*.mt.net.mk

Jabber: richie@bagra.net.mk
ICQ: 154236769
Sajt: riste.softver.org.mk


Profil

icon Re: 2 pitanja mysql pretraga06.09.2002. u 02:51 - pre 263 meseci
Covece, FULLTEXT ne samo da zavrsava posao, nego to je nabolje resenje
za pretragu velika BLOB polja koja sadrze tekst. LIKE i REGEXP se vise koriste
kad je u pitanju VARCHAR kolona.
People who think they know everything tend to irritate those of us who do.
 
Odgovor na temu

darkoPOKLONCIC
zg

Član broj: 5186
Poruke: 121
*.hrt.hr



Profil

icon Re: 2 pitanja mysql pretraga11.09.2002. u 12:27 - pre 262 meseci
i kako ti onda izgleda query?

imas MATCH ... AGAINST (.......) sintaksu ili nesto drugo?

 
Odgovor na temu

[es] :: MySQL :: 2 pitanja mysql pretraga

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

Postavi temu Odgovori

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