2016-08-30 2 views
1

Ich arbeite derzeit an einer Funktion in PostgreSQL, wo es in einem Array von ganzen Zahlen dauert. Alles, was in der Funktion arbeitet wie erwartet, jedoch an einem Punkt in der Funktion, die ich wie folgt vor:Fehler beim Versuch, ANY von int Array zu finden

 EXECUTE 
    'INSERT INTO tmptable (user_id) 
     SELECT DISTINCT user_id FROM user_skills 
     WHERE skill_values_id=ANY('||selected_skills||')'; 

Meine Funktion ist in der Lage das Array an anderen Stellen im Code zu lesen, aber dieser Teil führt den folgenden Fehler :

Ausführung ist fehlgeschlagen

ERROR: malformed array literal: " 
    INSERT INTO tmptable (user_id) 
    SELECT DISTINCT user_id FROM user_skills 
      WHERE skill_values_id=ANY(" 

Und finally- eine Linie am unteren Rand der Fehlermeldung ist, die sagt:

DETAIL: Array value must start with "{" or dimension information. 

Irgendwelche Ideen, wie man die any und Integer-Array schön spielen kann? Ich gehe davon aus, dass es etwas mit dem || zu tun hat Konzentration Gießen es zu einer Schnur?

Antwort

Verwandte Themen