def wrap3CorrectValueRules(database, colName, point=2): # colName = 'fc' orginSql = 'SELECT count(1) FROM football_data WHERE 1=1 ' pankousql = 'SELECT pankou,COUNT(1),pankou FROM football_data WHERE 1=1 and pankou is not null %s GROUP BY pankou' \ ' HAVING count(1)>20 order by pankou' for i in range(3): conds = [] name = colName + str(i + 1) valuesql = 'SELECT ROUND(%s,%s),COUNT(1) from football_data WHERE %s is not null GROUP BY ROUND(%s,%s) HAVING count(1)>20 ORDER BY ROUND(%s,%s)' % ( name, point, name, name, point, name, point) valList = database.execQuery(valuesql) if valList is None or len(valList) == 0: continue for k in valList: if k[1] < 5: continue num = k[0] constr = ' AND ROUND(' + name + ',%s)=%s AND ROUND(%s,%s)!=%s AND ROUND(%s,%s)!=%s' % ( point, num, colName + str((i + 1) % 3 + 1), point, num, colName + str((i + 2) % 3 + 1), point, num) tpankousql = pankousql % (constr) pankouList = database.execQuery(tpankousql) for j in pankouList: #print(('列名:%s,值:%s,盘口:%s,临场盘口:%s') % (name, num, j[0], j[2])) totalSql = orginSql + constr totalSql = totalSql + ' AND pankou=%s ' % (j[0]) count = j[1] addCond(totalSql, count, j[0], j[2], conds, constr, name, num, database) DB.insertCondition(database, conds)
def wrap1CorrectValueRules(database, colName): orginSql = 'SELECT count(1) FROM football_data WHERE 1=1 ' pankousql = 'SELECT pankou,COUNT(1),pankou FROM football_data WHERE 1=1 and pankou is not null %s GROUP BY pankou' \ ' HAVING count(1)>20 order by pankou' conds = [] name = colName valuesql = 'SELECT ROUND(%s,2),COUNT(1) from football_data WHERE %s is not null GROUP BY ROUND(%s,2) HAVING count(1)>20 ORDER BY ROUND(%s,2)' % ( name, name, name, name) valList = database.execQuery(valuesql) if valList is None or len(valList) == 0: return for k in valList: num = k[0] constr = ' AND ROUND(' + name + ',2)=%s ' % (num) tpankousql = pankousql % (constr) pankouList = database.execQuery(tpankousql) for j in pankouList: #print(('列名:%s,值:%s,盘口:%s,临场盘口:%s') % (name, num, j[0], j[2])) totalSql = orginSql + constr totalSql = totalSql + ' AND pankou=%s ' % (j[0]) count = j[1] addCond(totalSql, count, j[0], j[2], conds, constr, name, num, database) DB.insertCondition(database, conds)
def wrapSeniorRules(database, consql): orginSql = 'SELECT count(1) FROM football_data WHERE 1=1 and bisaishijian<"2019-09-01" ' pankousql = 'SELECT pankou,COUNT(1),pankou FROM football_data WHERE 1=1 and pankou is not null %s GROUP BY pankou' \ ' HAVING count(1)>30 order by pankou' conds = [] tpankousql = pankousql % (consql) pankouList = database.execQuery(tpankousql) if len(pankouList) == 0: return 0 for j in pankouList: totalSql = orginSql + consql totalSql = totalSql + ' AND pankou=%s ' % (j[0]) count = j[1] appendCons(totalSql, count, j[0], j[0], conds, database, consql) DB.insertCondition(database, conds)
def wrapSeniorRules(database, consql, colName, colValue): orginSql = 'SELECT count(1) FROM football_data WHERE 1=1 ' pankousql = 'SELECT pankou,COUNT(1),linchangpankou FROM football_data WHERE 1=1 and pankou is not null %s GROUP BY pankou' \ ' HAVING count(1)>20 order by pankou' conds = [] tpankousql = pankousql % (consql) pankouList = database.execQuery(tpankousql) if len(pankouList) == 0: return 0 for j in pankouList: # print(('列名:%s,值:%s,盘口:%s,临场盘口:%s') % (name, num, j[0], j[2])) totalSql = orginSql + consql totalSql = totalSql + ' AND pankou=%s ' % (j[0]) count = j[1] appendCons(totalSql, count, j[0], j[0], conds, consql, database, colName, colValue) DB.insertCondition(database, conds)
def mytask(tArr,nameArr,database,j,data,printStr,modelId,ouPeiMap,pk,sindex): conds = [] lessColMap={} for ti in range(len(tArr)): t = tArr[ti] sql = '' namestr = '' for m in range(len(t)): if m == len(t) - 1: sql += t[m] namestr += nameArr[ti][m] else: sql = sql + t[m] + '&' namestr += nameArr[ti][m] + ',' screenData(ouPeiMap, sql, namestr, j, conds, data,lessColMap,modelId,pk,sindex) print(('%s,当前进度:%s/%s') % (printStr, ti + 1, len(tArr))) if len(conds) > 5: DB.insertCondition(database, conds) conds = [] if len(conds) > 0: DB.insertCondition(database, conds)