There is a type:
CREATE TYPE ComprositiontTransfer AS ( Id BIGINT, Name CHARACTER VARYING, COUNT BIGINT, Price NUMERIC, IdExport CHARACTER VARYING, IdImport CHARACTER VARYING ); In the table:
CREATE TABLE "Transfer" ( "Id" serial NOT NULL, "Date" TIMESTAMP WITHOUT TIME zone NOT NULL, "OrgPostav" CHARACTER VARYING NOT NULL, "NameSklad" CHARACTER VARYING NOT NULL, "Сomposition" ComprositiontTransfer[] NOT NULL, "Operator" CHARACTER VARYING NOT NULL, "Total" NUMERIC, "Changed" BOOLEAN, "OneCid" CHARACTER VARYING, CONSTRAINT Transfer_pk PRIMARY KEY ("Id") ) WITH ( OIDS=FALSE ); Now go to go:
type Rez struct { Id int64 Date time.Time OrgPostav string NameSklad string Сomposition СompositionS Operator string Total float64 } type СompositionS struct { Id int64 Name string Count int64 Price float64 } Сам запрос: `"SELECT \"Id\", \"Date\", \"OrgPostav\", \"NameSklad\", \"Сomposition\", \"Operator\", \"Total\" FROM \"Prixod\" LIMIT $1 OFFSET $2"` Rows, err := Requests.Query("qPrixodSelectByAll", 10, 0) /*этот запрос получает весь список*/ if err != nil { println(err) } for Rows.Next() { var ss Rez Rows.Scan(&ss.Id, &ss.Date, &ss.OrgPostav, &ss.NameSklad, &ss.Сomposition, &ss.Operator, &ss.Total) fmt.Println(ss.Сomposition) } Duck here in the structure ss.Composition emptiness. How to do right?