Guten Tag,
Ich würde gerne Für eine “Suche” mehrere Tabellen Spalten verketten.(ich verwende PostgreSQL)
Folgendes Problem:
Das Ergebnis der Suche soll: Felix Mueller finden… Darum gebe ich in der “Suche”: “Felix Mueller” ein, aber er findet nur Felix(also spalte: “forename”) und kann die Spalte “surname” nicht finden, Weil die Verkettung fehlt.
Ich habe verschiedene möglichkeiten probiert, bin aber gescheitert.
Darum wollte ich Fragen, ob hier einer weiß, wie ich den “SELECT”-Befehl schreiben muss damit das funktioniert.
Versuche:
SELECT * FROM address WHERE (’{“felix”,“mueller”}’)::text[] @> ((’{"’||forename||’","’||surname||’"}’)::text[]);
SELECT * FROM address WHERE ‘felix mueller’::text = ANY((’{"’||forename||’","’||surname||’"}’)::text[]);
Ich hoffe ich habe mich einigermaßen deutlich ausgedrückt.(schreibe hier zum ersten mal)
test=*# select * from name ;
forename | surname
----------+------------
max | mustermann
lisa | meier
felix | mueller
(3 rows)
test=*# select * from name where forename || ' ' || surname = 'felix mueller';
forename | surname
----------+---------
felix | mueller
(1 row)
Danke erstmal für die Antwort, allerdings ist das nicht ganz das was ich wollte. Ich möchte bei der Suche auch zuerst den Nachnahmen eingeben können. Und vllt sogar noch andere Spalten mithinein nehmen… Das soll eine “Schnellsuche” werden. Ich habe also einen Array mit “Suchwörtern” und einen Array mit “Ergebnissen” und ich möchte in der “Suche” mehrere Angaben machen können damit ich es noch mehr eingrenzen kann.
Gruß