douxunchen3498 2017-04-29 05:31
浏览 121
已采纳

如何从Golang的Postgres数组中获取切片?

Let's say I have a postgres query like:

SELECT
  id,
ARRAY_AGG(code) AS code
  FROM
    codes
WHERE id = '9252781' 
GROUP BY id;

My return looks like:

 id        |  codes
-----------+-------------
 9252781   | {H01,H02}

Both id and codes are varchar.

In Golang when I scan along the rows for my result, it just freezes. No error, nothing.

  • 写回答

1条回答 默认 最新

  • douyi3307 2017-04-29 10:56
    关注

    If you're using the github.com/lib/pq postgres driver you can use their pq.Array helper function to scan and store postgres arrays.

    var id string
    var arr []string
    
    row := db.QueryRow(`SELECT '9252781', ARRAY['H01','H02']`)
    if err := row.Scan(&id, pq.Array(&arr)); err != nil {
        log.Fatal(err)
    }
    
    log.Println(id, arr)
    // 9252781 [H01 H02]
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 WPF 大屏看板表格背景图片设置
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示