Aiuto su una query in algebra relazionale

di palladino.al il
21 risposte

Buona sera a tutti, ho questa relazione: 

Fornitori(CF, Nome, indirizzo, città)

Prodotti(CP, Nome, Marca, modello)

Catalogo (CF, CP, Costo) 

la richiesta è: 

trovare nome e costo dei prodotti di marca hp acquistabili da fornitori di bari.

Ho questa questa algebra relazionale:  

pNome, Costo?((sCitta`='Bari'?(Fornitori?Catalogo)?sMarca='HP'?(Prodotti))
Ma non so se è sicura...mi potete dire se è giusta o no? 

21 Risposte

  • Ciao, come prima cosa dovrai rivedere le join per evitare possibili ambiguità, non hai qualificato.

    Ma siamo sicuri che non sia un compitino da svolgere ? in questo forum non si può fare.

  • Sono studente universitario e non credo che alle 18 nelle università si facciano gli esami... 

    Tu dici che devo esplicitare i join? 

  • Utilizzando relax su github ho notato che la selezione o di marca o di città. Ho provato a fare l unione ma giustamente non posso proiettare il costo 

  • 28/01/2025 - palladino.al ha scritto:

    Sono studente universitario e non credo che alle 18 nelle università si facciano gli esami... 

    Tu dici che devo esplicitare i join? 

    Io mi riferivo al regolamento del del forum... 

    comunque si le join è bene scriverle in questo modo: esempio... Fornitori.CF=Catalogo.CF esplicitando a chi effettivamente si riferiscono, altrimenti è ambiguo

  • Intanto ti chiedono di estrapolare i prodotti marcacavallo

    Select * from prodotti where marca=marcacavallo

    Poi che siano forniti da bari

    Select * from fornitori where citta=bari

    Adesso sappiamo i codici dei prodotti e i codici dei fornitori.

    Ma quali di questi fornitori di bari offrono prodotti marcacavallo?

    Select * from catalogo where cp nella prima select and cf nella seconda select

    Cerca selct in select e butta giù qualcosa, poi vediamo gli errori e li studiamo assieme

  • Ok provo 

  • Ciao @palladino.al,

    se è un esercizio di algebra relazionale io farei così:

    ti linko un pdf a condivisione aperta di un'università, magari può esserti utile:

    http://www2.ing.unipi.it/~a080066/didattica/BD/4%20-%20Algebra%20relazionale.pdf

  • 28/01/2025 - LucaDev ha scritto:

    Ciao @palladino.al,

    se è un esercizio di algebra relazionale io farei così:

    ti linko un pdf a condivisione aperta di un'università, magari può esserti utile:

    http://www2.ing.unipi.it/~a080066/didattica/BD/4%20-%20Algebra%20relazionale.pdf

    sisi è un esercizio di algebra relazionale...grazie mille

  • 28/01/2025 - sihsandrea ha scritto:

    Intanto ti chiedono di estrapolare i prodotti marcacavallo

    Select * from prodotti where marca=marcacavallo

    Poi che siano forniti da bari

    Select * from fornitori where citta=bari

    Adesso sappiamo i codici dei prodotti e i codici dei fornitori.

    Ma quali di questi fornitori di bari offrono prodotti marcacavallo?

    Select * from catalogo where cp nella prima select and cf nella seconda select

    Cerca selct in select e butta giù qualcosa, poi vediamo gli errori e li studiamo assieme

    non mi era venuto in mente di fare l'and 

  • 28/01/2025 - palladino.al ha scritto:

    28/01/2025 - sihsandrea ha scritto:

    Intanto ti chiedono di estrapolare i prodotti marcacavallo

    Select * from prodotti where marca=marcacavallo

    Poi che siano forniti da bari

    Select * from fornitori where citta=bari

    Adesso sappiamo i codici dei prodotti e i codici dei fornitori.

    Ma quali di questi fornitori di bari offrono prodotti marcacavallo?

    Select * from catalogo where cp nella prima select and cf nella seconda select

    Cerca selct in select e butta giù qualcosa, poi vediamo gli errori e li studiamo assieme

    non mi era venuto in mente di fare l'and 

    ma tu stai facendo in sql...io ti parlavo di algebra relazionale

Devi accedere o registrarti per scrivere nel forum
21 risposte