Go使用go-clickhouse库

Go使用go-clickhouse库,第1张

连接
func NewCkConn(ckInfo config.CkConfig) (*dbr.Connection, error) {
	conn, err := dbr.Open("clickhouse", "http://"+ckInfo.Username+":"+ckInfo.Password+"@"+ckInfo.Host+":"+ckInfo.Port+"/"+ckInfo.Database, nil)
	if err != nil {
		return nil, err
	}
	return conn, nil
}
查询
rows.next是从内存中一条一条的取出
rows.Scan是进行赋值
记住next与scan组合进行赋值的
func (m *Metric) TotalAmount(sql string) (TotalAmount, error) {
	rows, err := ck.Query(sql)
	if err != nil {
		return TotalAmount{}, err
	}

	var res TotalAmount
	for rows.Next() {
		err = rows.Scan(&res.CpuUseds, &res.CpuTotals, &res.MemUseds, &res.MemTotals)
		if err != nil {
			return TotalAmount{}, err
		}
	}
	return res, nil
}

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/995301.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存