Questa è la query attuale che assegna le giornate...
Ma non funziona perché salta alcune giornate. L'assegnazione è casuale quindi non posso dire quale combinazioni salta
codice:'Controllo che per ogni giornata ci siano tutte partite Do While not Fine = 1 'Recupero tutte le giornate che non hanno tutte le partite MySql = "SELECT NumGiornata FROM NumeroGiornate WHERE NumGiornata < " & MaxSquadre & " " MySql = MySql & "AND NumGiornata NOT IN (SELECT NumGiornata FROM CampionatiCalendario Where IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " GROUP BY NumGiornata, IdCampionato, IdGirone HAVING Count(IDSquadra1) = " & Int(CInt(MaxSquadre) / 2) & " AND IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & ") " MySql = MySql & "ORDER BY NumGiornata " Rs.Open MySql, Conn IF not Rs.Eof Then Rs.MoveFirst Do While not Rs.Eof 'Recupero la partita mancante MySql = "SELECT TOP 1 * FROM CampionatiCalendario " MySql = MySql & " WHERE IdSquadra1 NOT IN (SELECT IdSquadra1 FROM CampionatiCalendario WHERE IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " AND NumGiornata = " & Rs("NumGiornata") & " GROUP BY IdSquadra1)" MySql = MySql & " AND IdSquadra1 NOT IN (SELECT IdSquadra2 FROM CampionatiCalendario WHERE IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " AND NumGiornata = " & Rs("NumGiornata") & " GROUP BY IdSquadra2)" MySql = MySql & " AND IdSquadra2 NOT IN (SELECT IdSquadra1 FROM CampionatiCalendario WHERE IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " AND NumGiornata = " & Rs("NumGiornata") & " GROUP BY IdSquadra1)" MySql = MySql & " AND IdSquadra2 NOT IN (SELECT IdSquadra2 FROM CampionatiCalendario WHERE IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " AND NumGiornata = " & Rs("NumGiornata") & " GROUP BY IdSquadra2)" MySql = MySql & " ORDER BY NumGiornata, IdSquadra2, IdSquadra1 " Rs2.Open MySql, Conn IF not Rs2.Eof Then 'Aggiorno la giornata MySql = "UPDATE CampionatiCalendario SET " MySql = MySql & "NumGiornata = " & Rs("NumGiornata") & " " MySql = MySql & "WHERE IdCampionato = " & CmbCampionato & " AND IdGirone = " & CmbGirone & " AND IdSquadra1 = " & Rs2("IdSquadra1") & " AND IdSquadra2 = " & Rs2("IdSquadra2") Conn.Execute MySql End IF Rs2.Close Rs.MoveNext Loop Else 'Fine ciclo Fine = 1 End IF Rs.Close Loop

Rispondi quotando
