I know that Insert multiple data at once more efficiency:

INSERT INTO test(n1, n2, n3)

VALUES(v1, v2, v3),(v4, v5, v6),(v7, v8, v9);

How to do that in golang?

data := []map[string]string{

{"v1":"1", "v2":"1", "v3":"1"},

{"v1":"2", "v2":"2", "v3":"2"},

{"v1":"3", "v2":"3", "v3":"3"},

}

//I do not want to do it

for _, v := range data {

sqlStr := "INSERT INTO test(n1, n2, n3) VALUES(?, ?, ?)"

stmt, _ := db.Prepare(sqlStr)

res, _ := stmt.Exec(v["v1"], v["v2"], v["v3"])