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

标签 postgresql go go-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)
                }

我没有从查询中得到任何东西。
我究竟做错了什么?
谢谢!

最佳答案

这是我的数据库查询中的拼写错误。列名错误。
塞里斯·利蒙的建议提供了帮助。
如果有人遇到此问题,只需检查Go's Error Handling并使用log.Fatal

关于postgresql - 如何使用Golang的GORM从Postgresql数据库中获取数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59922552/

相关文章:

将 3 个表与类似输出的字符串组合在一起的 SQL 查询

ssh - 如何永久启动 go server?

pointers - 当我们说 uintptr 存储指针值的未解释位时,这意味着什么?

go - 在 Go 中创建对象

dictionary - map[gorm.DB]struct{}{} 给出无效的映射键类型 gorm.DB

go - 在 automigrate GORM 中跳过一个字段

python - Flask 动态 Google map 标记(python、postgres、psycopg2)

ruby-on-rails - postgres 中的小数列。有没有一种方法可以存储没有尾随零的值

SQL查询(Join without duplicates)

postgresql - 将PostgreSQL查询转换为GORM查询