abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    včera 22:11 | Nasazení Linuxu

    Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).

    Ladislav Hagara | Komentářů: 0
    včera 13:22 | IT novinky

    Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.

    Ladislav Hagara | Komentářů: 1
    včera 04:55 | Nová verze

    Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.

    Ladislav Hagara | Komentářů: 1
    včera 00:33 | Komunita

    Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.

    Ladislav Hagara | Komentářů: 27
    5.5. 23:22 | Pozvánky

    Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou

    … více »
    bkralik | Komentářů: 0
    5.5. 22:33 | IT novinky

    Dle plánu dnes končí služba Skype. Uživatelé mohou pokračovat v Microsoft Teams.

    Ladislav Hagara | Komentářů: 1
    5.5. 21:44 | IT novinky

    Český statistický úřad rozšiřuje Statistický geoportál o Datový portál GIS s otevřenými geografickými daty. Ten umožňuje stahování datových sad podle potřeb uživatelů i jejich prohlížení v mapě a přináší nové možnosti v oblasti analýzy a využití statistických dat.

    Ladislav Hagara | Komentářů: 2
    5.5. 12:33 | Zajímavý projekt

    Kevin Lin zkouší využívat chytré brýle Mentra při hraní na piano. Vytváří aplikaci AugmentedChords, pomocí které si do brýlí posílá notový zápis (YouTube). Uvnitř brýlí běží AugmentOS (GitHub), tj. open source operační systém pro chytré brýle.

    Ladislav Hagara | Komentářů: 1
    5.5. 12:11 | Pozvánky

    Jarní konference EurOpen.cz 2025 proběhne 26. až 28. května v Brandýse nad Labem. Věnována je programovacím jazykům, vývoji softwaru a programovacím technikám.

    Ladislav Hagara | Komentářů: 0
    4.5. 21:44 | Komunita

    Na čem aktuálně pracují vývojáři GNOME a KDE Plasma? Pravidelný přehled novinek v Týden v GNOME a Týden v KDE Plasma.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (21%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 541 hlasů
     Komentářů: 22, poslední 5.5. 10:06
    Rozcestník

    Dotaz: prikaz NOT REGEXP v mysql

    29.4.2013 14:58 bajt | skóre: 1
    prikaz NOT REGEXP v mysql
    Přečteno: 234×
    Když následující dotaz (a) spustím přímo v mysql databázi, tak funguje spravne, ovsem pokud jej zakonponuju do skriptu (b) tak radky ktere obsahuji dane slova v popisu neodfiltruje, nevite proc??

    (a) SELECT popis FROM....WHERE popis NOT REGEXP 'UKONČENA|VYŘAZENO|NEDODÁVÁ|STAŽENO Z|NENÍ V NABÍDCE|NENÍ K DISPOZICI'

    (b) $vysledek = MySQL_Query("SELECT popis FROM....WHERE popis NOT REGEXP 'UKONČENA|VYŘAZENO|NEDODÁVÁ|STAŽENO Z|NENÍ V NABÍDCE|NENÍ K DISPOZICI'");

    Řešení dotazu:


    Odpovědi

    29.4.2013 15:55 Šangala | skóre: 56 | blog: Dutá Vrba - Wally
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    Zmatek v kódování(?), zkusil bych naslepo něco bez diakritiky…
    To, že trpíš stihomamem, ještě neznamená, že po tobě nejdou. ⰞⰏⰉⰓⰀⰜⰉ ⰗⰞⰅⰜⰘ ⰈⰅⰏⰉ ⰒⰑⰎⰉⰁⰕⰅ ⰏⰉ ⰒⰓⰄⰅⰎ ·:⁖⁘⁙†
    29.4.2013 16:15 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    timto neni - zkousel jsem treba odfiltrovat jen polozky co obsahuji slovo "otvor" a nezafungovalo to :-(
    rADOn avatar 29.4.2013 16:34 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    Dotazy do databáze posíláš v nějakém kódování (specifikuješ při vytváření spojení) a toho se musíš držet a ne posílat to co zrovna ten den bleje tvůj Oblíbený Editor (tm). Čili v první řádě nemůžeš psát do kódu dotazy jako řetězcový literály. Potřebuješ to mít zaescapovaný, napriklad kdyby to bylo utf8 takhle:
    "SELECT popis FROM....WHERE popis NOT REGEXP 'UKON\xc4\x8cENA|VY\xc5\x98AZENO|NEDOD\xc3\x81V\xc3\x81|STA\xc5\xbdENO Z|NEN\xc3\x8d V NAB\xc3\x8dDCE|NEN\xc3\x8d K DISPOZICI'"
    Ideální je samozřejmě mít to ve stejným kódování jako db, ale není to podmínka – konverze není těžká pokud víš kodování zdroje.

    BTW celý je to padlý, používat češtinu v číselníkových sloupcích je složitější a pokud nehovíš práci s collation a kódováním sloupců tak bys to neměl dělat. A zahoď ten regex a použij místo toho NOT IN klauzuli, tím se nepřipravíš o indexy.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    29.4.2013 16:57 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    Diky rADOne ! jj kodovani pri spojeni je utf8 Kdybych tomu rozumel tak dobre jako ty, tak bych se tak blbe neptal :-) Jinak diky s timto to funguje dobre!

    NOT IN myslis pouzit ve stylu "SELECT id, popis ....WHERE popis NOT IN '....'" ?

    Sloupec popis neni ciselnik ale je v nem ulozeno nekdy az 1000 znaku popisu zbozi a ja chci pri exportu vyloucit ty, ktere v nem maji uvedeno aspon jedno z techto slov.....Nebo to chapu opet spatne (programovanim se vylozene nezivim)?
    rADOn avatar 29.4.2013 18:26 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    Kdyby to byl čísleník, můžeš to napsat takhle:
    …WHERE popis NOT IN ('foo','bar','baz')
    Uvnitř IN může být i subselect který ti třeba překlopí lidské názvy na něco rozumnějšího.
    …WHERE popis NOT IN ( SELECT id FROM foo WHERE … )
    Přitom to může fungovat rychle i nad velkými daty když tam hodíš index. A když nadefinuješ cizí klíč tak máš i zajištěnou referenční integritu.

    LIKE a REGEX použití indexu víceméně vylučují, takže každý dotaz pojede fullscan přes celou tabuli. Někdy se tomu nedá vyhnout, ale podle názvů v tom tvém dotazu soudím že by tam čísleník patřil.
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    rADOn avatar 29.4.2013 18:43 rADOn | skóre: 44 | blog: bloK | Praha
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    BTW praktická zkušenost která by se ti jak to tak čtu mohla hodit: když budeš něco ladit tak všechno dovnitř i ven escapuj (var_export nebo print_r nebo tak něco). Jinak se ti snadno stane že se ti něco špatně překóduje když to ukládáš, ale při čtení se to obrátí takže to nevidíš a pak se divíš proč to nejde někomu "záhadně" nejde (protože má jiný kódování v terminálu nebo prohlížeči, což obvykle zjistíš až pozdě).
    "2^24 comments ought to be enough for anyone" -- CmdrTaco
    29.4.2013 16:48 Sten
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    Někde (asi v tom skriptu po připojení k databázi) tam asi chybí SQL dotaz SET NAMES kódování
    29.4.2013 16:58 bajt | skóre: 1
    Rozbalit Rozbalit vše Re: prikaz NOT REGEXP v mysql
    je tam presne toto: MySQL_Query("SET NAMES 'utf8'");

    Založit nové vláknoNahoru

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

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.