Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241

    query complessa con left join?

    Dunque, il mio problema è questo: ho bisogno di avere una tabella con i nomi delle squadre e relativi sponsor di una stagione particolare; la seguente query va bene, finchè non mi trovo di fronte ad una squadra iscritta che non ha lo sponsor, questa non viene a torto presa in considerazione; allora io pensavo di utilizzare una left join, ma tutt'ora non saprei come fare la nuova query...

    select squadre.indice as i_in_stagione,
    concat(sponsor.nome,' ',squadre.nominativo,' ',squadre.citta) as nome_completo_in_stagione
    from squadre, iscrizioni, sponsor
    where iscrizioni.i_stagione=$i_st and iscrizioni.i_squadra=squadre.indice
    iscrizioni.i_sponsor=sponsor.indice

    --------------
    | SQUADRE |
    --------------
    | indice |
    | nominativo |
    | citta |
    --------------

    --------------
    | ISCRIZIONI |
    --------------
    | i_stagione |
    | i_squadra |
    | i_sponsor |
    --------------

    -----------
    | SPONSOR |
    -----------
    | indice |
    | nome |
    -----------

  2. #2
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    select squadre.indice as i_in_stagione,
    concat(sponsor.nome,' ',squadre.nominativo,' ',squadre.citta) as nome_completo_in_stagione
    from squadre INNER JOIN iscrizioni ON iscrizioni.i_squadra=squadre.indice
    LEFT JOIN sponsor ON iscrizioni.i_sponsor=sponsor.indice
    where iscrizioni.i_stagione=$i_st

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    va quasi bene, non fosse per il fatto che in CONCAT se uno degli elementi è NULL mi restituisce una stringa vuota...

  4. #4
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    trovato!
    andando in ricerca sul forum con chiavi: concat null
    ho trovato questa interessante discussione:

    http://forum.html.it/forum/showthrea...ht=concat+null

    e modificando la parte di query in questo modo, riesco ad ottenere tutte le squadre anche quelle senza sponsor:

    codice:
    concat_ws(' ',sponsor.nome,' ',squadre.nominativo,' ',squadre.citta)

  5. #5
    Utente di HTML.it L'avatar di luca200
    Registrato dal
    Apr 2002
    Messaggi
    4,120
    Originariamente inviato da Miki73
    va quasi bene, non fosse per il fatto che in CONCAT se uno degli elementi è NULL mi restituisce una stringa vuota...
    Io ho guardato solo la from e la where. La select non l'ho fumata proprio

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2004
    Messaggi
    241
    ah scusa non ti ho neanche ringraziato per avermi risolto il problema delle join

  7. #7
    luca stai ancora qua sopra

    mi ricodo anni fa che mi risolvesti un problema sempre con una query 'complessa'

    ma francesco ti paga per rispondere?

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.