Sì, questa è una domanda sui compiti a casa ma i nomi sono stati modificati per proteggere gli innocenti. Significa che non sto facendo la domanda a casa, ma piuttosto una piccola parte di essa, così posso capire il tutto.Algebra relazionale: qual è il modo corretto di rappresentare una clausola di 'avere'?
Diciamo che si dispone di una query SQL come questo:
--La interrogazione sarebbe elencare i prezzi delle auto che si verificano più di una volta.
select car_price from cars
group by car_price
having count (car_price) > 1;
La forma generale di questo in algebra relazionale è Y (gl, al) R dove y è il simbolo greco, GL è la lista di attributi per gruppo, AL è la lista delle aggregazioni
Così il l'algebra relazionale sarebbe:
Y (count(car_price)) cars
Quindi, come è scritta la clausola "avere" in tale affermazione? C'è una stenografia? Se no, devo solo selezionare da quella relazione? Forse qualcosa del genere?
Ho cercato su Internet per ore e non ho trovato esempi di conversione da HAVING a algebra relazionale. Grazie per l'aiuto!
+1 per essere onesti su compiti a casa. – hobodave
Heh, penso che qualsiasi cosa con "algebra relazionale" nel titolo sia per impostazione predefinita. –
Non so nulla dell'algebra relazionale, ma "avere" è lo stesso di "dove" eccetto che può essere applicato ad un aggregato di un insieme. C'è qualche ragione per cui l'algebra relazionale sarebbe diversa? – BobMcGee