Postgres-Array-Suche in der WHERE-Klausel

9

Ich habe eine Frage:

%Vor%

Mein Problem ist, wenn in der Tabelle bar = 3 keine Zeile mit foobar (oder einem anderen angeforderten Wert) vorhanden ist, werden für diesen Wert von bar keine Zeilen zurückgegeben.

Ich möchte, dass meine Abfrage stattdessen eine Zeile mit [bar, NULL] zurückgibt, aber ich kann mir keinen Weg ausdenken, dies zu erreichen.

Ist das überhaupt möglich?

    
Alex Tokarev 30.03.2011, 19:57
quelle

3 Antworten

11

Vielleicht ist etwas wie dieser Ansatz, wonach Sie suchen:

Testbett:

%Vor%

ursprüngliche Methode:

%Vor%

alternative Methode:

%Vor%

Wenn Sie 8.3 oder älter sind, gibt es keine eingebaute Funktion unnest , aber Sie können einen eigenen (nicht sehr effizienten) Ersatz erzwingen:

%Vor%     
user533832 31.03.2011, 13:37
quelle
1
%Vor%

Versuchen Sie stattdessen diese Abfrage.

    
Glen Solsberry 30.03.2011 20:01
quelle
1
%Vor%     
Quassnoi 31.03.2011 13:42
quelle

Tags und Links