code: func (h *Handle) DumpStatsToJSON(dbName string, tableInfo *model.TableInfo) (*JSONTable, error) {
  	pi := tableInfo.GetPartitionInfo()
  	if pi == nil {
  		return h.tableStatsToJSON(dbName, tableInfo, tableInfo.ID)
  	}
  	jsonTbl := &JSONTable{
  		DatabaseName: dbName,
  		TableName:    tableInfo.Name.L,
  		Partitions:   make(map[string]*JSONTable, len(pi.Definitions)),
  	}
  	for _, def := range pi.Definitions {
  		tbl, err := h.tableStatsToJSON(dbName, tableInfo, def.ID)
  		if err != nil {
  			return nil, errors.Trace(err)
  		}
  		if tbl == nil {
  			continue
  		}
  		jsonTbl.Partitions[def.Name.L] = tbl
  	}
  	return jsonTbl, nil
  }
docs: // DumpStatsToJSON dumps statistic to json.