Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 16 su 16
  1. #11
    Utente di HTML.it
    Registrato dal
    Jun 2002
    residenza
    Umbria
    Messaggi
    46
    Se vuoi estrarre i records della prima tabella anche se non trovano corrispondenza nella seconda dovresti usare LEFT JOIN
    sergio di sunelweb

  2. #12
    Originariamente inviato da carlo2002
    Grazie, avevo provato qualcosa di simile, ma così ottengo solamente i record della tabella 'gruppi' (duplicati) e non quelli indicati nella tabella 'condivisioni'...
    Ma non era ciò che chiedevi?

    Originariamente inviato da carlo2002
    Dovrei ricavare dalla tabella 'gruppi' i record che corrispondono ad un determinato 'id_staff' presente in entrambe le tabelle.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  3. #13
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    Originariamente inviato da satifal
    Ma non era ciò che chiedevi?
    Hai ragione, temo di essermi spiegato male ora ci riprovo...

    In pratica ogni utente identificato con 'id_staff' può formare dei guppi, quindi nella tabella 'gruppi', ogni record sarà associato ad un 'id_staff'.

    Poi mi è arrivata la richiesta che i gruppi dovevano poter essere condivisi con altri utenti, quindi ho pensato di fare la tabella 'condivisioni' per associare ad ogni gruppo altri id_staff.

    Il risultato che vorrei ottenere è che quando ogni utente visualizza l'elenco dei suoi gruppi tra questi comparissero anche quelli che altri utenti hanno condiviso con lui.

    Qundi dovrei trovare il modo di fare una select che facendo riferimento ad 'id_staff' estragga i relativi record sia dalla tabella 'guppi' sia dalla tabella 'condivisioni'. Naturalmente può essere che l'utente non abbia record in 'gruppi' ma li abbia in 'condivisioni' e vicevera.

    non ne vengo fuori.

    Errare humanum est, perseverare ovest

  4. #14
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    Sto provando con una Left Join

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

    Così prende i record nella tabella 'gruppi', ognuno ripetuto per il numero di associazioni con lo stesso 'id_staff' presenti nella tabella 'condivisioni'

    Naturalmente se richiedo c.id_gruppo avviene l'inverso. Quindi i records vengono presi unicamente da una sola tabella, devo capire come prenderli da entrambe
    Errare humanum est, perseverare ovest

  5. #15
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304
    Magari servono due query e non solo una!

  6. #16
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    Desideravo farne una sola, intanto per capire se e come si poteva fare una cosa del genere e poi per ordinare i records in ordine alfabetico con il campo 'nome' presente solo nella tabella 'gruppi'.

    Si potrei fare prima una select in 'condivisioni' con cui confezionare una stringa di id separati da virgola da utilizzare poi nell'altra query con un AND id_gruppi IN ($stringa_id). Se non trovo una soluzione più elegante andrà a finire che risolverò così
    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 © 2026 vBulletin Solutions, Inc. All rights reserved.