Portál AbcLinuxu, 12. května 2025 17:08

Dotaz: regexp v MySQL

5.6.2005 12:10 Martin
regexp v MySQL
Přečteno: 169×
Odpovědět | Admin
Zdravím, pořeboval bych sestavit dotaz, který by mi vybíral z databaze podle toho co daný sloupec obsahuje. Jde mi o to abych nemusel psát:
where sloupec='1' OR sloupec='213' OR atd..
myslel jsem že by to šlo zadat např. takto:
where sloupec=('1'||'213'||atd..)
no to jsem se ale spletl....V dokumentaci jsem to nenašel. Proto mě ještě napdadly regulární výrazy, ale v těch jsem celekem marný...
Nevíte někdo jak ten výraz sestavit? Pokud by však bylo i jiné řešení tak ho uvítám..
where sloupec REGEXP '^prostě nevím$'
Děkuji
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

5.6.2005 12:19 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: regexp v MySQL
Odpovědět | | Sbalit | Link | Blokovat | Admin
V dokumentaci si to evidentně nehledal.
Weblate - překládání přes web | Gammu SMSD - posílání SMS | Blog
5.6.2005 12:22 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
Ale hledal, ale já neumím sestavit ten dotaz....Jinak vím jak se to používá. Prostě nevím jaký reg. výraz mám vytvořit...
Na to jsem se ptal...
5.6.2005 12:28 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: regexp v MySQL
Tak v těch výsledkách klikni na MySQL Regular Expressions, tam jsou regulární výrazy celkem pěkně popsané.
5.6.2005 12:35 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
Ok, rád se přiučím. Ale když jsou tak pěkně popsané, určitě víš jak má ten výraz vypadat.... Celkem by mi píchlo kdyby jsi mi to tady napsal, místo toho aby jsi tady psal jen "název tvého blogu"...
Když to pak později bude někdo hledat tak to tady alespon najde...
5.6.2005 12:47 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
Co si neuděláš, nemáš...už to vím
where sloupec REGEXP '^(1|213|atd..)$'
5.6.2005 12:48 Michal Čihař | skóre: 61 | blog: Bláboly | Praha
Rozbalit Rozbalit vše Re: regexp v MySQL
No když si tu dokumentaci přečteš, tak je větší šance, že zjistíš že je užitečná a budeš jí nadále používat :-).
5.6.2005 13:00 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
abych řekl pravdu já ji normálně používám, když nevím. Ale jakmile vydím regulární výraz, tak už dále ani nečtu ;-)
Jednou se to sakra budu muset neučit... :-(
5.6.2005 13:08 VícNežNic | skóre: 42 | blog: Spáleniště | Ne dost daleko
Rozbalit Rozbalit vše Re: regexp v MySQL
Jak vydím, tak nejen ty reguláry ;-)
Copak toho není dost?
5.6.2005 14:13 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
Tak jo.... dostal jsi mě ;-)
5.6.2005 13:35 Ritchie | skóre: 27 | blog: Ritchie's | Berlin
Rozbalit Rozbalit vše Re: regexp v MySQL
Použití regulárního výrazu v tomto případě nepovažuji za dobrý nápad. Mnohem lepší je použití operátoru IN (viz níže).
5.6.2005 13:30 Ritchie | skóre: 27 | blog: Ritchie's | Berlin
Rozbalit Rozbalit vše Re: regexp v MySQL
Odpovědět | | Sbalit | Link | Blokovat | Admin
Proč nepoužijete operátor IN?

WHERE sloupec IN (1, 213, 'atd')
5.6.2005 14:12 Martin
Rozbalit Rozbalit vše Re: regexp v MySQL
Díky, to vypadá mnohem lépe

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.