Re: Selection ganzer Worte per regexp Suche

From: Boris Skegin <boris(dot)skegin(dot)de(at)googlemail(dot)com>
To: Andreas Tille <andreas(at)an3as(dot)eu>
Cc: pgsql-de-allgemein(at)postgresql(dot)org
Subject: Re: Selection ganzer Worte per regexp Suche
Date: 2013-07-11 15:16:47
Message-ID: CAB2jy+01jDAh4Dr5cmonazv2abnp4zacERrSC6CuATH+Lsj5DA@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

wie wäre' mit :

SELECT * FROM test WHERE data in ('abc,' ,' abc,',' abc') ;

Am 11.07.13 schrieb Andreas Tille <andreas(at)an3as(dot)eu>:
> Hallo,
>
> ich möchte aus folgender Tabelle
>
> CREATE table test (
> row int,
> data text
> ) ;
>
> INSERT INTO test VALUES ( 1, 'abc' );
> INSERT INTO test VALUES ( 2, 'abc, xyz' );
> INSERT INTO test VALUES ( 3, 'uvw, abc, xyz' );
> INSERT INTO test VALUES ( 4, 'xabc' );
> INSERT INTO test VALUES ( 5, 'yabcz' );
>
> alls die Zeilen heraussuchen, in denen das ganze Wort 'abc' vorkommt
> aber eben nicht sowas wie 'xabc'. Mit anderen Worten, die Abfrage
> soll nur die Zeilen 1, 2 und 3 enthalten, das heißt
>
> SELECT * FROM test WHERE data like '%abc%' ;
>
> liefert zu viel. Ich habe also mit regexp experimentiert und dachte
> sowas wie
>
> SELECT * FROM test WHERE data ~ '\babc\b' ;
>
> wäre eine gute Idee - das liefert aber keine Zeile. Selbst
>
> SELECT * FROM test WHERE data ~ '.*\babc\b.*' ;
>
> liefert nichts - scheinbar ist '\b' (Wortgrenze) nicht implementiert.
> Wie kann man die betreffenden Zeilen geschickt herausfiltern?
>
> Bemerkung: In meiner Anwendung werden die Worte immer durch ', '
> getrennt, wenn es mehrere sein sollten. Eventuell kann man die also in
> ein Array aufsplitten und dann im Array nach ganzen Wörtern suchen.
> Da ich denke, daß sowas länger dauert, würde ich die regexp Methode
> bevorzugen.
>
> Viele Grüße
>
> Andreas.
>
> --
> http://fam-tille.de
>
>
> --
> Sent via pgsql-de-allgemein mailing list
> (pgsql-de-allgemein(at)postgresql(dot)org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-de-allgemein
>

In response to

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Peter Eisentraut 2013-07-11 17:39:08 Re: Selection ganzer Worte per regexp Suche
Previous Message Lars Grundei 2013-07-11 15:14:47 Re: Selection ganzer Worte per regexp Suche