From: | Michael Renner <michael(dot)renner(at)amd(dot)co(dot)at> |
---|---|
To: | Guenther Boelter <gboelter(at)gmail(dot)com> |
Cc: | pgsql-de-allgemein(at)postgresql(dot)org |
Subject: | Re: Leerzeichen in LIKE Bedingung |
Date: | 2013-02-09 10:40:09 |
Message-ID: | 063ECF09-A2FA-423D-BCE1-2A1750CECF56@amd.co.at |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-de-allgemein |
Hallo Günther,
btrim sollt hinhauen:
pganalyze-test=# \d foo
Table "public.foo"
Column | Type | Modifiers
--------+---------------+-----------
bar | character(40) |
pganalyze-test=# select * from foo;
bar
------------------------------------------
Auftrag1
(1 row)
pganalyze-test=# select * from foo where bar like 'Auftrag1';
bar
-----
(0 rows)
pganalyze-test=# select btrim(bar) from foo where btrim(bar) like 'Auftrag1';
btrim
----------
Auftrag1
(1 row)
pganalyze-test=#
Aber ich glaub du willst eigentlich den Datentyp auf text umstellen und gut is.
lg,
Michael
On Feb 9, 2013, at 11:27 , Guenther Boelter <gboelter(at)gmail(dot)com> wrote:
> Moin!
>
> Nachdem ich nun mehr oder weniger erfolgreich von MySQL zu PostgreSQL
> gewechselt bin, habe ich nun das erste Problem, welches mir leichte
> Kopfzerbrechen bereitet.
>
> Ich habe in meiner Datenbank bzw. Tabelle ein Feld vom Typ
> character(40), also mit 40 Zeichen Laenge. In diesem Feld stehen
> Begriffe wie
>
> 'Auftraege01'
> 'Auftraege02'
> 'Auftraege02' etc. ..
>
> Wenn ich jetzt eine Abfrage in der Art von
>
> SELECT name FROM formulare WHERE gruppe LIKE 'Auftraege01' ORDER BY name
> ASC;
>
> starte, dann werden keine passenden Datensaetze gefunden. Wenn ich aber
> die LIKE-Bedingung mit Leerzeichen auf eine Gesamtlaenge von 40 Zeichen
> auffuelle, wie hier zum Beispiel
>
> SELECT name FROM formulare WHERE gruppe LIKE
> 'Auftraege01 ' ORDER BY name ASC;
>
> dann bekomme ich das gewuenschte Ergebnis.
>
> Da dies sicherlich nicht Sinn der Sache sein kann, frage ich mich, wo
> ich da was falsch verstanden habe. Ein 'Auftraege01%' hilft auch nicht,
> weil dann auch 'Auftraege011' mit einbezogen werden wuerde, was nicht
> sein soll. PostgreSQL schein BTRIM und RTRIM zu kennen, aber auch das
> bringt mir kein anderes Ergebnis.
>
> Ich vermute mal, die Loesung liegt nicht unbedingt in weiter Ferne, aber
> im Moment komme ich nicht drauf.
>
> Kann mir von Euch jemand helfen?
>
> Gruss
>
> Guenther
>
> --
> DavaoSOFT, the home of ERPel
> ERPel, das deutsche Warenwirtschaftssystem fuer LINUX
> http://www.davaosoft.com
>
>
>
> --
> 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 | Guenther Boelter | 2013-02-09 10:52:11 | Re: Leerzeichen in LIKE Bedingung |
Previous Message | Guenther Boelter | 2013-02-09 10:27:55 | Leerzeichen in LIKE Bedingung |