繁体   English   中英

如何使用 Golang 的 GORM 从 Postgresql 数据库中获取数组?

[英]How to get an array from Postgresql database using Golang's GORM?

我正在尝试使用 Golang 的 jinzhu GORM 从 Postgresql 数据库中获取多个值。 我的查询可以返回无、一个或多个值。 我希望它们保存到一个数组中 这是代码片段:

    var zones []string 
    d := db //database

    d.Raw(`SELECT
           DISTINCT reg.name
           FROM
           regions reg
           LEFT JOIN
           ad_regions adreg ON adreg.region_id = reg.id
           WHERE adreg.id = ?`, ID).Scan(&zones)

我也试过这样做

var zones []string
rows, _ := d2.Raw(`SELECT
                    DISTINCT reg.name
                    FROM
                    regions reg
                    LEFT JOIN
                    ad_regions adreg ON adreg.region_id = reg.id
                    WHERE adreg.id = ?`, ad.ID).Rows()
defer rows.Close()
for rows.Next() {
                var zone string
                rows.Scan(&zone)
                zones = append(zones, zone)
                }

我从查询中一无所获。 我究竟做错了什么? 谢谢!

这是我的数据库查询中的拼写错误。 列名错误。 Cerise Limon 的建议有所帮助。 如果有人遇到这个问题,只需检查Go 的错误处理并使用 log.Fatal

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM