str:=fmt.Sprintf("IFNULL(SUBSTRING_INDEX(GROUP_CONCAT( CASE WHEN JSON_EXTRACT(gk.kpi_values, '$[%d].kpi_id') = '%s' THEN JSON_EXTRACT(gk.kpi_values, '$[%d].value') END ), ',', 1), 0) AS '%s'",i,kid,i,kid)
fields=append(fields,str)
}else{
str:=fmt.Sprintf("sum(CASE WHEN JSON_EXTRACT(gk.kpi_values, '$[%d].kpi_id') = '%s' THEN JSON_EXTRACT(gk.kpi_values, '$[%d].value') ELSE 0 END) AS '%s'",i,kid,i,kid)
fields=append(fields,str)
}
}
fieldsSql:=strings.Join(fields,",")
// 查询数据
ifquery.SortField==""{
query.SortField="timeGroup"
}
ifquery.SortOrder==""{
query.SortOrder="desc"
}
orderSql:=fmt.Sprintf(" order by %s %s",query.SortField,query.SortOrder)
querySql:=fmt.Sprintf("SELECT %s FROM %s gk %s GROUP BY timeGroup %s",fieldsSql,tableName,whereSql,orderSql)
whereSql+=" where "+strings.Join(conditions," and ")
}
// 查询数据
querySql:=fmt.Sprintf("SELECT sum( CASE WHEN JSON_EXTRACT(gk.kpi_values, '$[2].kpi_id') = 'UPF.03' THEN JSON_EXTRACT(gk.kpi_values, '$[2].value') ELSE 0 END ) AS 'up', sum( CASE WHEN JSON_EXTRACT(gk.kpi_values, '$[5].kpi_id') = 'UPF.06' THEN JSON_EXTRACT(gk.kpi_values, '$[5].value') ELSE 0 END ) AS 'down' FROM kpi_report_upf gk %s",whereSql)
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.