ich eine Abfrage leite die für mich einen Blick schafft mit folgenden DetailsPostgresql Abfrage das Array in Reihen spalten
id name brand_id
1 E1 {3,4}
2 E2 {5,7,8}
3 E4 {1}
Ich mag die Datensätze für brand_id in gleiche Anzahl von Zeilen aufgeteilt. Daher sollte die obige Ansicht wie folgt aussehen:
id name brand_id
1 E1 {3}
1 E1 {4}
2 E2 {5}
2 E2 {7}
2 E2 {8}
3 E4 {1}
Hierher die brand_id aus einer Unterabfrage durch Anpassung der Erstellungsdatum des Datensatzes mit dem Datum der Marke
SQL Query berechnet:
CREATE OR REPLACE VIEW %I AS
SELECT row_number() over(),
id,
name,
(select array(select id
from brand b
where status = true and (i.creation_date = b.creation_date)
order by b asc)) as brand_id
FROM events i
group by id order by id
Haben Sie 'b.status = true' vermisst? –
@wingedpanther 'status' ist offensichtlich ein' boolean', so dass nur der Spaltenname ausreicht. Die 'WHERE'-Klausel benötigt einen Ausdruck, der zu einem booleschen Wert führt, eine boolesche Spalte reicht aus. – Patrick
Ich wusste das nicht, Wie peinlich !! –