0

在 Go 和 pgx 中我很新。有没有办法轻松解析查询中的子结构值?

所以我做了一个加入查询,如:

rows, err := conn.Query(context.Background(),
    `SELECT 
        rdr.id AS r_Id,
        rdr.field1 AS r_Field2,
        rdr.field2 AS r_Field2,
        contact.firstname AS c_FirstName,
        contact.lastname AS c_LastName,
        contact.id AS c_Id 
    FROM rdr
    INNER JOIN contact ON rdr.contact=contact.id`)

然后我的结构是

type Rdr struct {
    Id              int32     
    Field1          int32     
    Contact         Contact   
    Field2          time.Time
}

type Contact struct {
    Id        int
    FirstName string
    LastName  string
}

如何将行中返回的数据解析到我的 Rdr 结构中。我需要将正确的字段解析到联系人中,最好是同时解析,但我不知道该怎么做。我看不到 Scan 会如何做到这一点。我们正在查看 FieldDescriptions 和 Values,但它变得非常混乱。有没有简单/常用的方法来做到这一点?我想这是一个非常普遍的问题。

4

0 回答 0