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

Traženje sloga u tabeli

[es] :: MySQL :: Traženje sloga u tabeli

[ Pregleda: 1377 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Traženje sloga u tabeli22.04.2009. u 14:55 - pre 182 meseci
Ćao!

Na primer, imam u tabeli sledeće slogove:

id ime
1 marko*
2 *ivan*
3 pera*
...

Da li postoji mogućnost da ja upitom tipa:
Code:

SELECT * FROM tabela WHERE ime = "marko_cxdsadas";
ili
SELECT * FROM tabela WHERE ime = "aaa_ivan1234";


kao rezultat dobijem marko* ili *ivan*, tj. da mi zvezdica(*) nekako bude džoker? Naravno gornji upiti za sada vraćaju 0 slogova!

Ovo mi treba da ne bi izvlačio celu tabelu iz baze pa posle upoređivao sa preg_match, već da izvučem samo slog koji mi je potreban.

Unapred hvala!
 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
79.101.155.*



+987 Profil

icon Re: Traženje sloga u tabeli22.04.2009. u 15:01 - pre 182 meseci
U MySQL-u znak % ti je dzoker.
Code:

SELECT * FROM tabela WHERE ime = 'marko%';
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.mysql.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Traženje sloga u tabeli22.04.2009. u 15:33 - pre 182 meseci
Igore, molim te da proveris sta pises pre nego sledeci put pogresno savetujes kolegu :)

za koriscenje "jockera" moras da koristis LIKE a ne =
takodje ako je u pitanju MyISAM tabela mozes da koristis MATCH ako je polje indexirano sa full text indexom

Code:

mysql> create table t1 (x int, a char(20));
Query OK, 0 rows affected, 2 warnings (0.04 sec)

mysql> insert into t1 values (1, 'aabbbbbbbbb'), (2, 'aaccccccccccc'), (3, 'aacqqqqq');
Query OK, 3 rows affected (0.00 sec)
Records: 3  Duplicates: 0  Warnings: 0

mysql> select * from t1 where a='aa%';
Empty set (0.00 sec)

mysql> select * from t1 where a like 'aa%';
+------+---------------+
| x    | a             |
+------+---------------+
|    1 | aabbbbbbbbb   | 
|    2 | aaccccccccccc | 
|    3 | aacqqqqq      | 
+------+---------------+
3 rows in set (0.00 sec)

mysql> select * from t1 where a like 'aac%';
+------+---------------+
| x    | a             |
+------+---------------+
|    2 | aaccccccccccc | 
|    3 | aacqqqqq      | 
+------+---------------+
2 rows in set (0.00 sec)



 
Odgovor na temu

Igor Gajic

Član broj: 93194
Poruke: 747
79.101.155.*



+987 Profil

icon Re: Traženje sloga u tabeli22.04.2009. u 16:47 - pre 182 meseci
Ok, necu vise da ti se mesam u teritoriju
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.mysql.com.

Sajt: mysql.rs


+2377 Profil

icon Re: Traženje sloga u tabeli22.04.2009. u 17:00 - pre 182 meseci
mesaj se, mesaj se.... i ja pravim greske, zato i ja proverim to sto cukam pre nego postujem
 
Odgovor na temu

Shinhan
PHP programmer
Subotica

Član broj: 12327
Poruke: 372
91.150.127.*

Jabber: shinhan@elitesecurity.org
ICQ: 400847988


+4 Profil

icon Re: Traženje sloga u tabeli23.04.2009. u 07:32 - pre 182 meseci
Mislim da mare hoće obrnuto. To jest da džokerovani stringovi se nalaze u bazi. Što je moguće, sad sam testirao.

Jedino što treba drugačije da uradiš mare je da koristiš % kao džoker, i da pri pretraživanju radiš sledeće:

SELECT * FROM tabela WHERE "aaa_ivan1234" LIKE ime;

Samo pojma nemam kakvu poentu može imati ovakvo obrtanje.
"Common sense is not so common." - Voltaire
 
Odgovor na temu

Marko Medojević
Team leader
Digital ST
Beograd

Član broj: 93659
Poruke: 776
*.adsl-a-1.sezampro.yu.

Sajt: www.digitalst.rs


+99 Profil

icon Re: Traženje sloga u tabeli23.04.2009. u 14:49 - pre 182 meseci
@Shinhan

Hvala puno! A i ostalima takođe!
 
Odgovor na temu

[es] :: MySQL :: Traženje sloga u tabeli

[ Pregleda: 1377 | Odgovora: 6 ] > FB > Twit

Postavi temu Odgovori

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