Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Database Campionato di Calcio

1,434 views
Skip to first unread message

Giuseppe

unread,
Mar 4, 2010, 3:27:01 PM3/4/10
to
Salve a tutti ragazzi,

scusate sapreste dirmi in quale modo posso estrarre dei dati da una
query/tabella

che mi rappresenta il calendario di un campionato di calcio.

Ogni record di questa query contiene

Squadra Casa --- Squadra Trasferta --- Gol Sq. Casa --- Gol squadra Trasferta

Praticamente come faccio a far si che io scrivendo il risultato della
partita, possa estrarre i dati da questa query anche solo per sommare i gol
fatti da una squadra?

Spero possiate darmi un consiglio per iniziare un database per gestire un
campionato di calcio, ma questa volta non riesco proprio a cominciare il
lavoro.

Ragazzi vi ringrazio, aspetto che qualcuno mi dia qualche consiglio.

Saluti a tutti.

Giovanni

unread,
Mar 4, 2010, 5:17:40 PM3/4/10
to

"Giuseppe" <Gius...@discussions.microsoft.com> ha scritto nel messaggio
news:771A4DD0-7B3A-4071...@microsoft.com...

Di seguito uno script SQL per creare la tabella in SQL Server per Access non
è molto diverso.
CREATE TABLE [Incontri](
[Locali] [varchar](30) NOT NULL,
[Ospiti] [varchar](30) NOT NULL,
[RetiLoc] [smallint] NULL,
[RetiOsp] [smallint] NULL,
[Categoria] [varchar](3) NOT NULL,
[Girone] [varchar](1) NOT NULL,
[Turno] [int] NOT NULL,
[Data] [datetime] NULL,
[IDSquadra] [varchar](20) NULL
) ON [PRIMARY]

Mentre questo ti compila la classifica.
CREATE PROCEDURE [usp_Classifica]
(@sCategoria nvarchar(3),
@iTurno int) AS
Select Nome, Sum(Punti) As Punti, Sum(GC + GF) As G, Sum(VC+VF) As V,
Sum(NC+NF) As N,
Sum(PC+PF) As P, Sum(FC+FF) As F, Sum(SC+SF) As S, Sum(GC) As GC, Sum(VC) As
VC,
Sum(NC) As NC, Sum(PC) As PC, Sum(FC) As FC, Sum(SC) As SC, Sum(GF) As GF,
Sum(VF) As VF,
Sum(NF) As NF, Sum(PF) As PF, Sum(FF) As FF, Sum(SF) As SF From (Select
Locali As Nome,
Case when RetiLoc > RetiOsp then 3 when RetiLoc = RetiOsp then 1 else 0 end
Punti, 1 As GC,
Case when RetiLoc > RetiOsp then 1 else 0 end VC,
Case when RetiLoc = RetiOsp then 1 else 0 end NC,
Case When RetiLoc < RetiOsp then 1 else 0 end PC,
RetiLoc As FC, RetiOsp As SC, 0 As GF, 0 As VF, 0 As NF, 0 As PF, 0 As FF, 0
As SF
From Incontri Where (Categoria = @sCategoria) and (Turno <=@iTurno) and
(RetiLoc IS NOT NULL) and (Locali <> 'Riposo')
UNION ALL SELECT Ospiti As Nome,
Case when RetiLoc < RetiOsp then 3 when RetiLoc = RetiOsp then 1 else 0 end
Punti,
0 As GC, 0 As VC, 0 As NC, 0 As PC, 0 As FC, 0 As SC, 1 As GF,
Case When RetiLoc < RetiOsp then 1 else 0 end VF,
Case When RetiLoc = RetiOsp then 1 else 0 end NF,
Case When RetiLoc > RetiOsp then 1 else 0 end PF,
RetiOsp As FF, RetiLoc As SF
From Incontri Where (Categoria = @sCategoria) and (Turno <= @iTurno) AND
(RetiOsp IS NOT NULL) and (Ospiti <> 'Riposo')) Incontri GROUP BY Nome Order
by Punti Desc, G

Questo è il risultato:
Nome Punti G V N P F S GC VC NC PC FC SC GF VF NF PF FF SF
CAZZAGHESE 6 2 2 0 0 4 1 1 1 0 0 2 0 1 1 0 0 2 1
PONTOGLIESE 1916 6 2 2 0 0 9 4 1 1 0 0 4 2 1 1 0 0 5 2
SOLLEONE 4 2 1 1 0 3 1 1 1 0 0 2 0 1 0 1 0 1 1
UNITAS COCCAGLIO 4 2 1 1 0 5 2 1 1 0 0 4 1 1 0 1 0 1 1
OSPITALETTO 2000 4 2 1 1 0 6 2 1 1 0 0 5 1 1 0 1 0 1 1
LA SPORTIVA 4 2 1 1 0 3 2 1 0 1 0 1 1 1 1 0 0 2 1
MARCOLINI 3 2 1 0 1 2 1 1 1 0 0 2 0 1 0 0 1 0 1
CAPRIOLESE 3 2 1 0 1 3 3 1 0 0 1 1 2 1 1 0 0 2 1
VALTROMPIA 2000 3 2 1 0 1 3 4 1 1 0 0 1 0 1 0 0 1 2 4
ORATORIO OME 2 2 0 2 0 2 2 1 0 1 0 1 1 1 0 1 0 1 1
COLLEBEATO 1 2 0 1 1 1 3 1 0 1 0 1 1 1 0 0 1 0 2
CONCESIO 1 2 0 1 1 1 3 1 0 1 0 1 1 1 0 0 1 0 2
PROVAGLIO 1 2 0 1 1 2 3 1 0 0 1 1 2 1 0 1 0 1 1
SAN PANCRAZIO 1 2 0 1 1 2 5 1 0 1 0 1 1 1 0 0 1 1 4
ERBUSCO 0 2 0 0 2 1 4 1 0 0 1 1 2 1 0 0 1 0 2
BORNATO 0 2 0 0 2 3 10 1 0 0 1 2 5 1 0 0 1 1 5

Chiedo scusa se ho esagerato.
Ciao
Giovanni

Giuseppe

unread,
Mar 5, 2010, 5:33:01 AM3/5/10
to
Giovanni, sei stato gentilissimo,

ma praticamente io uso access 2007, come posso utilizzare questi dati che mi
hai dato?

Cioè mi basta fare una tabella e una query??
Di cui:
La tabella e la prima che mi hai scritto
E la query è la seconda

Io posso creare la tabella? E incollare il codice sql della query nel
database? e poi tutto funziona?

Cortesemente dimmi come posso fare, grazie mille anticipatamente.

Giuseppe

unread,
Mar 5, 2010, 7:58:07 AM3/5/10
to
Select Nome, Sum(Punti) As Punti, Sum(GC + GF) As G, Sum(VC+VF) As V,
Sum(NC+NF) As N,
Sum(PC+PF) As P, Sum(FC+FF) As F, Sum(SC+SF) As S, Sum(GC) As GC, Sum(VC) As
VC,
Sum(NC) As NC, Sum(PC) As PC, Sum(FC) As FC, Sum(SC) As SC, Sum(GF) As GF,
Sum(VF) As VF,
Sum(NF) As NF, Sum(PF) As PF, Sum(FF) As FF, Sum(SF) As SF From (Select
Locali As Nome,


IIf([RetiLoc]> [RetiOsp],"3",IIf([RetiLoc]=[RetiOsp],"1","0"))


Punti, 1 As GC,
Case when RetiLoc > RetiOsp then 1 else 0 end VC,

IIf([RetiLoc]> [RetiOsp],"1","0","VC"))
IIf([RetiLoc]= [RetiOsp],"1","0","nC"))
IIf([RetiLoc]< [RetiOsp],"1","0","pC"))

RetiLoc As FC, RetiOsp As SC, 0 As GF, 0 As VF, 0 As NF, 0 As PF, 0 As FF, 0
As SF

UNION ALL SELECT Ospiti As Nome,

Case when RetiLoc < RetiOsp then 3 when RetiLoc = RetiOsp then 1 else 0 end
Punti,
0 As GC, 0 As VC, 0 As NC, 0 As PC, 0 As FC, 0 As SC, 1 As GF,
Case When RetiLoc < RetiOsp then 1 else 0 end VF,
Case When RetiLoc = RetiOsp then 1 else 0 end NF,
Case When RetiLoc > RetiOsp then 1 else 0 end PF,

IIf([RetiLoc]< [RetiOsp],"1","0","VF"))
IIf([RetiLoc]= [RetiOsp],"1","0","NF"))
IIf([RetiLoc]> [RetiOsp],"1","0","PF"))

RetiOsp As FF, RetiLoc As SF
From Incontri Where (Categoria = @sCategoria) and (Turno <= @iTurno) AND
(RetiOsp IS NOT NULL) and (Ospiti <> 'Riposo')) Incontri GROUP BY Nome Order
by Punti Desc, G


Questa è la mia query,ma appena la attivo mi dice che ci sono problemi di
sintassi nella clausola FROM.....

E' possibile avere qualcosa di gia pronto, anche solo una bozza tanto per
cominciare a lavorare, mi servirebbe un database con una tabella e una
piccola query, tanto per capire come iniziare.

Vi ringrazio anticipatamente, saluti a tutti.

Giuseppe

unread,
Mar 5, 2010, 10:13:01 AM3/5/10
to
Salve a tutti,

Vorrei creare un database per gestire la classifica di un campionato di
calcio.


Ho una tabella:

SQUADRA1 - SQUADRA2 - GolSQUADRA1 - GolSQUADRA2
SQUADRA1 - SQUADRA2 - GolSQUADRA1 - GolSQUADRA2
SQUADRA1 - SQUADRA2 - GolSQUADRA1 - GolSQUADRA2

Vorrei creare una query che mi estragga i risultati cosi:

SQUADRA - GOLFATTI - GOLSUBITI
SQUADRA - GOLFATTI - GOLSUBITI
SQUADRA - GOLFATTI - GOLSUBITI

dopo di che penso di poter perfezionare il mio lavoro.

Ma il problema di fondo è che non so estrarre i dati dalla tabella, potete
aiutarmi?
Potete farmi capire come devo fare?

Mi serve solo un semplice esempio iniziale per poter completare questo
lavoro.

GRAZIE MILLE A CHI MI RISPONDERA'!!!!


SALUTI

Vladimiro Leone

unread,
Mar 5, 2010, 1:45:05 PM3/5/10
to

Ciao Giuseppe, sul seguente link puoi trovare più che un esempio :-)
E' passato un pò di tempo da quando l'ho pubblicato e seppur con
qualche errore ho ritenuto opportuno non toglierlo di mezzo.
Oggi, ad essere sincero, ho un db con i fiocchi che purtroppo non
posso mettere a disposizione in quanto chi me lo ha richiesto l'ha
dovuto pagare.
Sia il db per la gestione del calcio a 5 (calcetto) che quello per la
gestione del calcio a 11 hanno bisogno, per la stampa del comunicato,
del modulo di word.

http://cid-c6235c2e3d2ce762.skydrive.live.com/browse.aspx/Gestione%20calcio

Ciao Vladimiro.

Giuseppe

unread,
Mar 5, 2010, 4:01:03 PM3/5/10
to
Vladimiro, ti ringrazio per il database che mi hai inviato, l'ho visto, è
molto interessate.

Non potendo però scrivere il calendario giornata per giornata non posso
utilizzarlo.

Volevo dirti che sono interessato ad acquistarlo, contattatami quindi
cortesemente al mio indirizzo mail giuseppe85...@gmail.com

Spero di ricevere tue notizie al più presto.

Vladimiro Leone

unread,
Mar 5, 2010, 5:20:30 PM3/5/10
to
On 5 Mar, 22:01, Giuseppe <Giuse...@discussions.microsoft.com> wrote:
> Vladimiro, ti ringrazio per il database che mi hai inviato, l'ho visto, è
> molto interessate.
>
> Non potendo però scrivere il calendario giornata per giornata non posso
> utilizzarlo.
>
> Volevo dirti che sono interessato ad acquistarlo, contattatami quindi
> cortesemente al mio indirizzo mail giuseppe85pappala...@gmail.com

>
> Spero di ricevere tue notizie al più presto.

Ciao Giuseppe,
come vedi, l'indirizzo mail è tagliato; dovresti mettere al posto di @
la parola chiocciola.
Eventualmente, la mia mail è vladileonchiocciolaalice.it
Ciao Vladimiro.

0 new messages