Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822

    MYSQL - Dubbi su inner join o left join

    Ciao

    ho sempre dei dubbi sulle query fatte con LEFT JOIN o INNER JOIN. Spero mi possiate aiutare.

    Ho questa query

    codice:
    $query = "SELECT * FROM ana_asis01be LEFT JOIN ana_agen01be ON ana_asis01be.INGRESSO = ana_agen01be.idagen01be 
    				WHERE DATA  >= '".$datai1."' 
    				AND  DATA <= '".$datai2."' ".$tipodata2." ".$stadiosql." ".$tippagsql." ".$
    Lasciamo perdere le condizioni (WHERE) che non danno problemi.

    La tabella ana_agen01be ha una marea di campi e vorrei estrarne alcuni. Posso estrarre un campo come farei normalmente:

    codice:
    $nome = $row["ana_agen01be.nome"]
    Oppure devo dichiarare il campo esplicitamente nella query ? Il dubbio è relativo al fatto che con la SELECT prendo tutti i campi dalla tabella ana_asis01be mentre non so come si comporta l'altra tabella.
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    A prescindere dal tipo di join che influisce sui record restituiti e non sui campi, se scrivi select * otterrai tutti i campi di entrambe le tabelle. Se ti servono solo i campi di ana_asis01be scriverai

    SELECT ana_asis01be.* FROM ana_asis01be ....

    fai attenzione nel caso le tabelle contengano campi con lo stesso nome perchè ciò crea ambiguità. Per risolverle dovrai assegnare ai campi degli alias oppure richiamarli secondo la sintassi nome_tabella.nome_campo.

  3. #3
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822
    Bene grazie mi hai risolto il dubbio.

    Dire che facendo cosi

    codice:
    $nome = $row["ana_agen01be.nome"]
    dovrei risolvere il problema dell'ambiguità. Corretto ?
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Sì. In alternativa usi degli alias

    select ana_asis01be.nome as pinco,ana_agen01be.nome as palla ....

    e da php richiami quelli.

  5. #5
    Utente di HTML.it L'avatar di ivy_76
    Registrato dal
    Dec 2004
    Messaggi
    1,822
    Grazie mille !
    TORTA DI RISO .. F I N I T A !!

    Da M.C.S.A. a impiegato pubblico :-(

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