Visualizzazione dei risultati da 1 a 8 su 8

Discussione: join fattibile?

  1. #1
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251

    join fattibile?

    ho una tabella "viaggi" così strutturata:
    id, titolo, destinazione, alloggio, descrizione;

    1 | Capodanno a parigi | Parigi | suite | info sul viaggio
    2 | Natale a Barcellona | Barcellona | suite | info sul viaggio
    ecc. ecc.

    poi ho una tabella "destinazioni" con i seguenti campi:
    id, destinazione, stato, area, immagine;

    1 | Parigi | Francia | Europa | parigi.jpg
    2 | Barcellona | Spagna | Europa | barcellona.jpg
    3 | Fuerteventura | Spagna | Canarie | fuerteventura.jpg
    ecc. ecc.

    vorrei far si che quando visualizzo l'elenco dei viaggi,
    mi collego alla tabella "destinazioni" e, per esempio per il viaggio a parigi visualizzo a schermo:

    id:
    1

    titolo:
    Capodanno a parigi

    destinazione:
    Parigi

    --------- dalla tabella "destinazioni"
    stato:
    Francia

    area:
    Europa

    immagine:
    parigi.jpg
    ---------

    alloggio:
    suite

    descrizione:
    info sul viaggio

    è possibile collegare le due tabelle anche se nel campo "destinazione" della tabella "viaggi" non ho memorizzato l'id destinazione ma il nome testuale della destinazione? :master:

    che mi suggerite?

  2. #2
    Si, si può fare.
    Nella JOIN metti i due campi destinazione.

  3. #3
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    ciao Mems, ho provato così.
    codice:
    strSQL = "SELECT viaggi.id, viaggi.titolo, viaggi.destinazione, viaggi.alloggio, viaggi.descrizione, destinazioni.destinazione, destinazioni.stato, destinazioni.area, destinazioni.immagine FROM viaggi, destinazioni WHERE viaggi.destinazione = destinazioni.destinazione"
    ora purtroppo ho il server in manutenzione e non la posso provare ma ad occhio ti sembra corretta?

    non sbaglio nel dire che comunque sarebbe meglio basarsi sull'id per fare in modo che ad un'eventuale modifica delle destinazioni, la modifica si ripercuota su tutti i risultati?

  4. #4
    Utente di HTML.it L'avatar di wallrider
    Registrato dal
    Apr 2003
    Messaggi
    2,755
    anch'io farei sull'id piuttosto che sulla destinazione

    ma la join in strSQL non c'è
    RIP Cicciobenzina 9/11/2010

    "Riseminaciceli, i ceci nell'orto"

  5. #5
    Originariamente inviato da mahimo
    ciao Mems, ho provato così.
    codice:
    strSQL = "SELECT viaggi.id, viaggi.titolo, viaggi.destinazione, viaggi.alloggio, viaggi.descrizione, destinazioni.destinazione, destinazioni.stato, destinazioni.area, destinazioni.immagine FROM viaggi, destinazioni WHERE viaggi.destinazione = destinazioni.destinazione"
    ora purtroppo ho il server in manutenzione e non la posso provare ma ad occhio ti sembra corretta?

    non sbaglio nel dire che comunque sarebbe meglio basarsi sull'id per fare in modo che ad un'eventuale modifica delle destinazioni, la modifica si ripercuota su tutti i risultati?
    Non fai una join, ma va bene lo stesso.

  6. #6
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    Originariamente inviato da Mems
    Non fai una join, ma va bene lo stesso.
    ok, almeno su quello sono tranquillo
    ma in termini tecnici se non sto facendo una join, cosa sto facendo? io sto seguendo questo articolo.

    dite che l'utilizzo della select che ho postato potrebbe creare inconvenienti/richiedere troppe risorse di sistema?

  7. #7
    è una JOIN implicita (non usi cioè esplicitamente la parola e il costrutto JOIN, ma l'effetto è lo stesso) - potrebbe (condizionale) essere meno performante - ma io non starei a preoccuparmi

  8. #8
    Utente di HTML.it L'avatar di mahimo
    Registrato dal
    Feb 2003
    Messaggi
    251
    Originariamente inviato da optime
    è una JOIN implicita (non usi cioè esplicitamente la parola e il costrutto JOIN, ma l'effetto è lo stesso) - potrebbe (condizionale) essere meno performante - ma io non starei a preoccuparmi
    ok, grazie per la spiegazione optime. approfondirò comunque il discorso join

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 © 2026 vBulletin Solutions, Inc. All rights reserved.