Hello everyone, Please help me understand how use interfaces. I need that from a JSON rows pulls the three parameters, count and unload data in CSV format with the columns Date, Revenue, Gold.
package main import ( "database/sql" "log" _"github.com/go-sql-driver/mysql" "compress/zlib" "os" "fmt" "bytes" "io" "encoding/json" ) func main() { db, err := sql.Open("mysql", "name:password@tcp(127.0.0.1:port)/database") if err != nil { panic(err.Error()) } defer db.Close() rows, err := db.Query(`SELECT data FROM user_stats ORDER BY created_at LIMIT 10`) if err != nil { log.Fatal(err) } defer rows.Close() for rows.Next() { var data []byte err := rows.Scan(&data) if err != nil { log.Fatal(err) } type UserStatsData struct { Date string `json:"d"` Revenue float64 `json:"r"` Gold int `json:"g"` } userStatsData := UserStatsData{} err = json.Unmarshal(data, &userStatsData) if err != nil { r, err := zlib.NewReader(bytes.NewReader(data)) if err != nil { log.Panicf("Cannot read archive %v", err); } io.Copy(os.Stdout, r) r.Close() } } } -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.