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
>
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 |