 |
mark |
| Algebra Relazionale |
23-02-2007 16:27 |
|
 |
mark |
.grande:maestro.

Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
Algebra Relazionale
mi è venuto un dubbio
VENDITA(CodVend,CodCli,CodProd,Qta)
VENDITORE(Codice,Nome, Città)
CLIENTE(CodiceCli,NomeCli,CittàCli)
determinare codice dei venditori che hanno venduto solo a clienti della propria città
Mi è venuto in mente di suare l'equijoin
PCodice (VENDITORE) |\| Città=CittàCli (CLIENTE)
dove il simbolo |\| è l'equi-join
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Last edited by mark on 23-02-2007 at 21:46
|
|
23-02-2007 16:27 |
|
|
|  |
 |
mostrielo |
| VENDITA(CodVend,CodCli,CodProd,Qta)
... |
23-02-2007 17:46 |
|
 |
mostrielo |
boolean

Registered: Sep 2004
Posts: 47 (0.01 al dì)
Location: Milano
Corso: Informatica (F49)
Anno: c++
Time Online: 2 Days, 15:14:46 [...]
Status: Offline
Edit | Report | IP: Logged |
VENDITA(CodVend,CodCli,CodProd,Qta)
VENDITORE(Codice,Nome, Città)
CLIENTE(CodiceCli,NomeCli,CittàCli)
Devi prima trovare l'insieme dei venditori che hanno venduto a clienti della propria città; poi devi trovare l'insieme dei venditori che non hanno venduto a clienti della propria città; infine devi sottrarre dal primo insieme il secondo: il risultato è l'insieme di quelli che hanno venduto SOLO a clienti della propria città
|
|
23-02-2007 17:46 |
|
|
|  |
 |
mark |
| mi chiedo perchè non dovrebbe funzionare l'equi-j ... |
23-02-2007 21:17 |
|
 |
mark |
.grande:maestro.

Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
mi chiedo perchè non dovrebbe funzionare l'equi-join
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
|
|
23-02-2007 21:17 |
|
|
|  |
 |
Gusher |
| [QUOTE][i]Originally posted by mark [/i]
... |
24-02-2007 01:05 |
|
 |
Gusher |
Splinter fun club

Registered: Jan 2003
Posts: 475 (0.06 al dì)
Location: Ovunque
Corso: Informatica
Anno: Done
Time Online: 15 Days, 22:06:15 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mark
mi chiedo perchè non dovrebbe funzionare l'equi-join
Non funziona perchè in quel modo proietti tutti i venditori che abitano nella stessa citta dei clienti; ciò non implica che quel venditore ha venduto a un solo cliente della stessa città e nemmeno che esita una vendita che metta appunto in relazione Venditore e Cliente. Senza contare il fatto che potresti avere anche tuple doppie (n volte lo stesso venditore perchè esistono n clienti nella stessa città...).
Potresti avere venditori che non hanno venduto un cazzo ma che compaiono in quanto esite un cliente della stessa città oppure venditori che hanno venduto si a un cliente della medesima città ma hanno venduto anche ad altri clienti NON della stessa città.
|
|
24-02-2007 01:05 |
|
|
|  |
 |
mark |
| [QUOTE][i]Originally posted by mostrielo [/i]
... |
24-02-2007 11:35 |
|
 |
mark |
.grande:maestro.

Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mostrielo
VENDITA(CodVend,CodCli,CodProd,Qta)
VENDITORE(Codice,Nome, Città)
CLIENTE(CodiceCli,NomeCli,CittàCli)
Devi prima trovare l'insieme dei venditori che hanno venduto a clienti della propria città; poi devi trovare l'insieme dei venditori che non hanno venduto a clienti della propria città; infine devi sottrarre dal primo insieme il secondo: il risultato è l'insieme di quelli che hanno venduto SOLO a clienti della propria città
è quel solo che trae in inganno. Signfica che se trovo venditori che hanno venduto sia a clienti della stessa città che a clienti un una città differente non devono essere considerati ?
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
|
|
24-02-2007 11:35 |
|
|
|  |
 |
Gusher |
| [QUOTE][i]Originally posted by mark [/i]
... |
24-02-2007 12:12 |
|
 |
Gusher |
Splinter fun club

Registered: Jan 2003
Posts: 475 (0.06 al dì)
Location: Ovunque
Corso: Informatica
Anno: Done
Time Online: 15 Days, 22:06:15 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by mark
è quel solo che trae in inganno. Signfica che se trovo venditori che hanno venduto sia a clienti della stessa città che a clienti un una città differente non devono essere considerati ?
Esatto.
|
|
24-02-2007 12:12 |
|
|
|  |
 |
mark |
| vediamo se ho capito qualcosa
... |
24-02-2007 12:30 |
|
 |
mark |
.grande:maestro.

Registered: Oct 2003
Posts: 783 (0.10 al dì)
Location:
Corso: F49
Anno: finito!
Time Online: 8 Days, 18:34:33 [...]
Status: Offline
Edit | Report | IP: Logged |
vediamo se ho capito qualcosa
(
(P codice(VENDITORE) |\| codvend=codice (P codvend (VENDITA)))
=
(P cittàcli(CLIENTE) |\| codcli=codicecli (P codicli(VENDITA)))
)
-
(
(P codice(VENDITORE) |\| codvend=codice (P codvend (VENDITA)))
<>
(P cittàcli(CLIENTE) |\| codcli=codicecli (P codicli(VENDITA)))
)
mancano un pò di parentesi
spiego:
partendo dall'ultima linea; proietto da VENDITA il codcli e faccio equi-join con codice di CLIENTE per estrarne la citta.
Stessa cosa per venditore e creo una relazione che contiene venditori che hanno venduto a clienti della stessa città
Le prime due righe invece creo relazione di venditori che non hanno venduto a clienti della stessa città quindi sottraggo...
__________________
Non ti perdere di coraggio se ti tocca lavorare molto e raccogliere poco.....
Last edited by mark on 24-02-2007 at 12:36
|
|
24-02-2007 12:30 |
|
|
|  |
 |
rancidox |
| Ciao a tutti,
... |
23-05-2007 17:23 |
|
 |
rancidox |
.novellino.
Registered: May 2007
Posts: 1 (0.00 al dì)
Location: La Coruna/Reggio Calabria
Corso: Informatica
Anno: 4
Time Online: 0:06:17 [...]
Status: Offline
Edit | Report | IP: Logged |
Ciao a tutti,
avrei un problemino nel risolvere questo esercizio di algebra relazionale:
Praticamente ho questo:
uomini(nome_uomo,età);
donne(nome_donna,età);
uomo_piace(nome_donna,nome_uomo);
donna_piace(nome_uomo,nome_donna);
matrimonio(nome_donna,nome_uomo);
Vorrei sapere la seguente:
donne sposate a le quali piaccciono tutti gli uomini sposati tranne suo marito..
è un pò un casino legato a quel TUTTI qualcuno saprebbe aiutarmi!?!?
Credo che in SQL è una cosa del genere
select d.nome_donna,d.età from donne d
where d.nome_donna in (select nome_donna from matrimonio)
and (select count(*) as a from matrimonio) = ( (select count(*) as b from donna_piace dp where dp.nome_donna=d.nome_donna) - 1)
and (select nome_uomo from matrimonio m where m.nome_donna=d.nome_donna) not in (select ddp.nome_uomo as dpnu from donna_piace ddp where ddp.nome_donna=d.nome_donna)
GRAZIE IN ANTICIPO!
|
|
23-05-2007 17:23 |
|
|
|  |
 |
| All times are GMT. The time now is 09:21. |
|
|
 |
|
 |
|
|
|  |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|