Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi FB 1.5 Problem mit Coalesce() und like in where-Klausel (https://www.delphipraxis.net/109276-fb-1-5-problem-mit-coalesce-und-like-where-klausel.html)

Eppos 27. Feb 2008 13:29

Datenbank: Firbird • Version: 1.5 • Zugriff über: bde

FB 1.5 Problem mit Coalesce() und like in where-Klausel
 
Hallo zusammen,

habe folgende Problem.

SQL-Code:
Select
Feld1,
Coalesce(Feld2, '') || ' ' || Coalesce(Feld3, '') as NeuesFeld1
from Tabelle1
where NeuesFeld1 like '%blabla%'
Diesen Befehl führt er nicht aus, auch wenn ich NeuesFeld1 durch 2 (Feld zwei im sql) ersetze.
Ich möchte also ein zusammengeführtes Feld mit einem like Befehl Abfragen.
Hat da jemand nen Vorschlag?

Vielen Dank.

Eppos

Gruber_Hans_12345 27. Feb 2008 13:35

Re: FB 1.5 Problem mit Coalesce() und like in where-Klausel
 
probiers mal mit ... (ungetestet)
SQL-Code:
Select
Feld1,
Coalesce(Feld2, '') || ' ' Coalesce(Feld3, '') as NeuesFeld1
from Tabelle1
where (Coalesce(Feld2, '') || ' ' Coalesce(Feld3, '')) like '%blabla%'

Eppos 27. Feb 2008 13:55

Re: FB 1.5 Problem mit Coalesce() und like in where-Klausel
 
Feld2 = Numeric
Feld3 = varchar

Also wenn ich es nach deiner Variante machen, funktioniert es, aber nur wenn ich auf das Feld2 abprüfe, sprich mit zahlen was eingebe, sobald text hinzukommt, macht er es nicht mehr...

Gruber_Hans_12345 27. Feb 2008 14:21

Re: FB 1.5 Problem mit Coalesce() und like in where-Klausel
 
entweder du prüfst die beiden felder einzeln ab, was wahrscheinlich die bessere möglichkeit wäre.
oder du castest das numeric feld in ein VARCHAR

Eppos 27. Feb 2008 14:31

Re: FB 1.5 Problem mit Coalesce() und like in where-Klausel
 
gecastet habe ich es auch schon, kann aber das Feld dann nicht mehr abprüfen


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:42 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz