2 INNERJOIN

di
Anonimizzato10879
il
1 risposte

2 INNERJOIN

x = "SELECT Film.*, Attore.*, Genere.*, Regista.* FROM Regista INNER JOIN (Genere INNER JOIN (Attore INNER JOIN Film ON Attore.ID = Film.IDAttore) ON Genere.ID = Film.IDGenere) ON Regista.ID = Film.IDRegista  WHERE Film LIKE '*" & Testo5.Value & "*' AND Anno LIKE '*" & Testo22.Value & "*';"

Così il codice non mi funziona, come dovrei modificarlo?

1 Risposte

  • Re: 2 INNERJOIN

    Ciao dopo ogni inner join segue la tabella e la clausola on.
    Nella tua query non stai stabilendo come mettere in relazione le tabelle.

    Ricapitolando: select [i campi delle tabelle che ti servono] from tabella1 inner join tabella2 on tabella2.chiavesecondaria = tabella1.chiaveprimaria
    (ipotizzando che la tabella2 abbia relazione con tabella1 ovviamente)

    Poi:
    
    WHERE Film LIKE '*" & Testo5.Value & "*'
    
    Questa cosa non ha nessun senso. La condizione la devi mettere su un campo della tabella non sulla tabella.

    Altre 2 cose didattiche:
    1. ho visto che usi Film.*, Attore.*, Genere.*,... in genere è buona norma estrarre solo i campi che realmente ti interessano
    2. quando metti insieme più tabelle, per rendere più corta e leggibile la query ti consiglio di usare gli alias.
Devi accedere o registrarti per scrivere nel forum
1 risposte