Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 14 su 14

Discussione: Join o Union

  1. #11
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Assolutamente no.
    Le tabelle devono essere legate tra di loro con i campi comuni.

    Ti faccio un esempio.

    codice:
    select t.numeroOrdine, t.codiceDestinatario, d.nomeDestinatario, r.codiceArticolo, a.nomeArticolo, r.quantitaOrdinata
    from testataOrdini t
    inner join destinatario d on t.codiceDestinatario = d.codiceDestinatario
    inner join righeOrdini r on t.numeroOrdine = r.numeroOrdine
    inner join articoli a on r.codiceArticolo = a.codiceArticolo
    where t.codiceDestinatario = $variabile
    Allora non ho capito, tranne che dopo il WHERE.
    Qui c'è scritto INNER JOIN.

    Proviamo a riepilogare con la "nuova" sintassi:
    SELECT tutti i campi che voglio, un * ci sta anche, no?
    Il WHERE nel mio caso è il CodiceFiscale = '$variabile'
    INNER JOIN non lo capisco...
    FROM perché solo 1 tabella quando le voglio tutte?
    Ultima modifica di FioreFix; 12-09-2018 a 00:28

  2. #12
    Ho letto un po' di guide per cercare di capire bene, se ho capito giusto, nel mio caso dovrei fare:
    Codice PHP:
    SELECT Tabella1.NomeTabella1.CognomeTabella2.Costi
    FROM Tabella1
    INNER JOIN Tabella2 ON Tabella1
    .CodiceFiscale Tabella2.CodiceFiscale
    INNER JOIN Tabella3 ON Tabella1
    .CodiceFiscale Tabella3.CodiceFiscale
    INNER JOIN Tabella4 ON Tabella1
    .CodiceFiscale Tabella4.CodiceFiscale
    INNER JOIN Tabella5 ON Tabella1
    .CodiceFiscale Tabella5.CodiceFiscale
    WHERE CodiceFiscale 
    '$variabile'
    È corretta?

  3. #13
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jul 2002
    residenza
    Lyon
    Messaggi
    5,341
    Sembra. Manca il nome della tabella nella clausola where.
    Se nella select usi solo due tabelle non è sicuro che tu abbia bisogno di fare tante join.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  4. #14
    Quote Originariamente inviata da badaze Visualizza il messaggio
    Sembra. Manca il nome della tabella nella clausola where.
    Se nella select usi solo due tabelle non è sicuro che tu abbia bisogno di fare tante join.
    Si si, ok, poi prima col PC sottomano me ne sono reso conto.

    Ho capito la logica della sintassi, era questo che mi mancava.
    Grazie!

    È già tutto up!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2018 vBulletin Solutions, Inc. All rights reserved.