2009-08-04 4 views
1

In einem SELECT-Aufruf geben wir zwei verschiedene Zeitstempel zurück, aber da jede Spalte jeweils 'timeag' genannt wird, können wir sie in den Ergebnissen nicht unterscheiden. Die offensichtliche Lösung des Umbenennens einer der Spalten führt zu einer großen Menge an Refactoring, die wir vermeiden wollen. Unsere Abfrage sieht in etwa so aus:Wie kann ich meine Postgresql SELECT-Daten aus Spalten mit demselben Namen zurückgeben?

DECLARE 
    p_cursor refcursor; 

BEGIN 

    OPEN p_cursor FOR 


    SELECT table1.name, 
     table1.timetag, 
     table1.status, 
     table2.timetag, 
     table2.description 

    FROM myFirstTable table1 LEFT OUTER JOIN mySecondTable table2 ON (<data's ids>), 
    ( 
<query details> 
     ); 
    WHERE 
<more query details> 

    RETURN p_cursor; 

END; 

PS. Entschuldigen Sie, wenn ich die Bedingungen durcheinander gebracht habe, bin ich sehr neu in Datenbanken.

Antwort

6

Verwenden Sie die AS -Klausel, um einige Spalten nur aus der Sicht der Ergebnisse, die Sie erhalten (die Datenbank wird nicht geändert) "umzubenennen" - z.

SELECT table1.name, 
     table1.timetag, 
     table1.status, 
     table2.timetag AS theothertimetag, 
     table2.description 

    FROM 
+0

Danke, das hat den Trick! – Adam

Verwandte Themen