From b33d5e50eb46091c4f1022ef03ee5a6396fcab1a Mon Sep 17 00:00:00 2001 From: Vladimir Mihailenco Date: Mon, 4 Jul 2022 17:12:41 +0300 Subject: [PATCH] chore: add scanning into a map --- ch/chschema/column.go | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/ch/chschema/column.go b/ch/chschema/column.go index 33d806d..6a52777 100644 --- a/ch/chschema/column.go +++ b/ch/chschema/column.go @@ -9,6 +9,7 @@ import ( "math" "net" "reflect" + "strings" "time" "github.com/uptrace/go-clickhouse/ch/chproto" @@ -447,6 +448,10 @@ func (c StringColumn) ConvertAssign(idx int, v reflect.Value) error { v.SetBytes(internal.Bytes(c.Column[idx])) return nil } + case reflect.Map: + dec := json.NewDecoder(strings.NewReader(c.Column[idx])) + dec.UseNumber() + return dec.Decode(v.Addr().Interface()) default: v.Set(reflect.ValueOf(c.Column[idx])) return nil