Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746

    [MySQL] problema con una query

    Ho due tabelle

    Tabella 'gruppi':

    - id gruppi
    - id_staff
    - nome_gruppo

    Tabella 'condivisioni':

    - id_condivisione
    - id_gruppi
    - id_staff


    Dovrei ricavare dalla tabella 'gruppi' i record che corrispondono ad un determinato 'id_staff' presente in entrambe le tabelle.

    Ho provato con una INNER JOIN ma non funziona probabilmente non è neanche l'approccio giusto

    Codice PHP:
    $query "
    SELECT gru.id_gruppo,nome_gruppo
    FROM gruppi AS g
    INNER JOIN condivisioni AS c
    ON g.id_gruppi = c.id_gruppi
    WHERE g.id_staff = '"
    .$_dati_utente['id_staff']."' 
    OR c.id_staff = '"
    .$_dati_utente['id_staff']."' 

    Come potrei risolvere?
    Errare humanum est, perseverare ovest

  2. #2
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304
    prova cosi:

    Codice PHP:
    $query " SELECT gru.id_gruppo,nome_gruppo 
    FROM gruppi AS g INNER JOIN condivisioni AS c 
    ON g.id_staff = c.id_staff 
    WHERE g.id_staff = '"
    .$_dati_utente['id_staff']."' 
    OR c.id_staff = '"
    .$_dati_utente['id_staff']."' " 

  3. #3
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    Originariamente inviato da bode
    prova cosi:

    Codice PHP:
    $query " SELECT gru.id_gruppo,nome_gruppo 
    FROM gruppi AS g INNER JOIN condivisioni AS c 
    ON g.id_staff = c.id_staff 
    WHERE g.id_staff = '"
    .$_dati_utente['id_staff']."' 
    OR c.id_staff = '"
    .$_dati_utente['id_staff']."' " 
    grazie, ma non funziona
    Errare humanum est, perseverare ovest

  4. #4
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304
    Originariamente inviato da carlo2002
    grazie, ma non funziona
    Magari prova a spiegare meglio, in che modo non funziona, ti da errore o non ti da i record che vuoi?

  5. #5
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    mi da i record solo della tabella 'gruppi' e non quelli presenti nella tabella 'condivisioni', in più sono duplicati ossia compaiono ognuno due volte
    Errare humanum est, perseverare ovest

  6. #6
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    Le sto provando tutte, anche come outer join ma non ne vengo fuori
    Errare humanum est, perseverare ovest

  7. #7
    codice:
    SELECT * FROM gruppi g, condivisioni c WHERE g.id_staff = c.id_staff AND g.id_staff = valore_desiderato;
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2002
    residenza
    Umbria
    Messaggi
    46
    Che messaggio di errore ricevi ?
    Mi pare di capire che il prefisso "gru." del primo campo della select non sia definito.
    sergio di sunelweb

  9. #9
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    Originariamente inviato da serun
    Che messaggio di errore ricevi ?
    Mi pare di capire che il prefisso "gru." del primo campo della select non sia definito.
    Pardon, quello è un errore di copiatura, le prove le sto facendo con il codice corretto. Non ho messaggi di errore ma semplicemente i risultati che ottengo non sono quelli che vorrei.
    Errare humanum est, perseverare ovest

  10. #10
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,746
    Originariamente inviato da satifal
    codice:
    SELECT * FROM gruppi g, condivisioni c WHERE g.id_staff = c.id_staff AND g.id_staff = valore_desiderato;
    Grazie, avevo provato qualcosa di simile, ma così ottengo solamente i record della tabella 'gruppi' (duplicati) e non quelli indicati nella tabella 'condivisioni', questo se l'utente è presente anche nella tabella 'condivisioni'.

    Se l'utente non è presente nella tabella 'condivisioni' allora non compare niente, neanche se ha dei record nella tabella 'gruppi'.

    Forse sbaglio concettualmente la struttura dei dati. Invece che mettere in 'gruppi' l'id del proprietario, dovrei invece metterlo nella tabella 'condivisioni'.

    Cosa ne dite?
    Errare humanum est, perseverare ovest

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.