Ergebnis 1 bis 6 von 6

Thema: Function returns table

  1. #1
    yayo ist offline Neuer Benutzer
    Registriert seit
    22.11.2011
    Beiträge
    6

    Standard Function returns table

    Hallo,

    ich versuche eine funktion mit table als rückgabe aba irgenwie bekomme ich immer syntax Fehler.

    Code:
    create or replace function doTest(integer)
    returns table
    return
    	select col1 from table1 where col1=$1
    language 'plpgsql';
    ich bekomme wie gesagt ein Sytax error near return. hab auch probiert mit as && begin .... end;&&. Trotzdem kriege ich das selbe Problem.
    weisst jmd vllt warum?

    danke für die Hilfe
    Yayo

  2. #2
    castorp ist offline Erfahrener Benutzer
    Registriert seit
    27.06.2009
    Beiträge
    525

    Standard

    Code:
    create or replace function doTest(some_id integer)
    returns table(col1 varchar)
    as
    $body$
    begin 
       return query select col1 from table1 where col1 = some_id;
    end;
    $body$ 
    language 'plpgsql';
    A SQL query walks into a bar and sees two tables. He walks up to them and says 'Can I join you?'

  3. #3
    yayo ist offline Neuer Benutzer
    Registriert seit
    22.11.2011
    Beiträge
    6

    Standard

    danke für die Antwort,

    die Funktion wurde erstellt. aber wenn ich ich die aufrufe dann kommt so ein Fehler:

    column reference "col1" is ambiguous... also column col1 hat den type int in der table1. hab auch probiert bei returns table(col1 integer) aba leider imma noch das selbe Problem...

    kann jmd vllt weiter helfen?

    danke für die Hilfe
    Yayo

  4. #4
    ads
    ads ist offline Super-Moderator
    Registriert seit
    08.02.2006
    Ort
    MD
    Beiträge
    4.056

    Standard

    Du solltest deine Parameter und die Spalten nicht gleich benennen ...
    Xandrian: Kurz gesagt: Du hast ein falsches Konzept und willst nicht auf ads hören

    Jetzt NEU: PostgreSQL - Datenbankpraxis für Anwender, Administratoren und Entwickler

    PostgreSQL Service & Support

  5. #5
    akretschmer ist gerade online Super-Moderator
    Registriert seit
    29.10.2006
    Ort
    Dresden
    Beiträge
    5.472

    Standard

    Zitat Zitat von yayo Beitrag anzeigen
    danke für die Antwort,

    die Funktion wurde erstellt. aber wenn ich ich die aufrufe dann kommt so ein Fehler:

    column reference "col1" is ambiguous... also column col1 hat den type int in der table1. hab auch probiert bei returns table(col1 integer) aba leider imma noch das selbe Problem...

    kann jmd vllt weiter helfen?

    danke für die Hilfe
    Yayo
    Sind da vielleicht 2 (oder mehr) Tabellen involviert, wo es 2 mal (oder mehr) eine gleichnamige Spalte gibt? Falls ja: verwende einen Alias.

    Andreas
    --
    ads Das hatte dir akretschmer gestern schon gesagt und siehe da sobald du das machst, funktioniert es ;-)
    https://www.xing.com/profile/Andreas_Kretschmer7

  6. #6
    yayo ist offline Neuer Benutzer
    Registriert seit
    22.11.2011
    Beiträge
    6

    Standard

    Zitat Zitat von ads Beitrag anzeigen
    Du solltest deine Parameter und die Spalten nicht gleich benennen ...

    genau du hast recht... funktioniert alles jetzt.

    danke
    Yayo

Ähnliche Themen

  1. for i in loop returns setof int
    Von shans im Forum PL/pgSQL
    Antworten: 2
    Letzter Beitrag: 02.09.2009, 16:11
  2. returns setof / Tabelle aus Funktion zurückgeben
    Von THILL im Forum Trigger und Funktionen
    Antworten: 9
    Letzter Beitrag: 15.05.2009, 06:55
  3. Antworten: 2
    Letzter Beitrag: 08.05.2009, 20:28
  4. Rückgabewert table function
    Von fuppes im Forum Allgemeines
    Antworten: 3
    Letzter Beitrag: 27.06.2008, 22:47
  5. Problem FUNCTION mit 2 ResultSets
    Von merlin-hst im Forum Trigger und Funktionen
    Antworten: 4
    Letzter Beitrag: 04.06.2008, 15:01

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •  

Links: Tobias Bauer - IT- und Funkdienstleistungen   -   Bilderrahmen-kaufen.de - Der Onlineshop für Bilderrahmen & Fotorahmen   -   Funkforum