Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    [SQL]Spiegazione su Select con GROUP_CONCAT ?

    Buon giorno, ho questo problemino.
    Ho due tabelle una TBPROFILI e TB_INTERVENTI cosi composte:
    TBPROFILI
    -------------------------
    UserName | Autorizzazioni
    -------------------------
    giovanni | 1
    -------------------------
    mario | 10-11
    -------------------------
    antonio | 3
    -------------------------

    TB_INTERVENTI
    --------------------------------------
    Intervento | UserName | Autorizzazioni
    --------------------------------------
    A | giovanni | 1
    --------------------------------------
    B | mario | 11
    --------------------------------------
    C | antonio | 3
    --------------------------------------
    D | mario | 10
    --------------------------------------

    Vorrei sapere in breve, come posso confrontare le autorizzazioni di 'mario' inserite nelle due tabelle , e fargli vedere gli interventi con autorizzazioni '10 e 11'?
    Ho provato con questa join ma, ovviamente estrapola solo l'intervento con autorizzazione '10':
    codice:
    select * from TB_INTERVENTI join TBPROFILI 
    	ON
    	TB_INTERVENTI.Autoriz = TBPROFILI.Autoriz 
    	where TBPROFILI.UserName = '" . $SessUserName . "' 
    	";
    Ho provato ad inserire al posto di '=', 'like' ma non funziona, ho visto che c'è questa query ma non so adattarla al caso mio:
    codice:
    SELECT libro.titolo, GROUP_CONCAT(DISTINCT categoria.nome
    ORDER BY categoria.nome ASC SEPARATOR ', ') AS categorie
    FROM libro JOIN libro_in_categoria ON (libro.id = libro_in_categoria.libro)
    JOIN categoria ON (categoria.id = libro_in_categoria.categoria)
    GROUP BY libro.id ORDER BY titolo ASC
    Credo possa essermi utile, in quanto ho notato che ha SEPARATOR ed io nel campo Autorizzazioni della tabella TBPROFILI ho '10-11' quindi SEPARATOR sarebbe '-'.
    Potete aiutarmi per favore?
    Grazie mille

  2. #2
    niente?dai ragazzi per favore un'aiutino..

  3. #3
    Originariamente inviato da ANTAGONIA
    niente?dai ragazzi per favore un'aiutino..
    non e' chiaro quello che chiedi.

    Per quanto riguarda le autorizzazioni o privilegi che siano, non e' corretto mettere una serie di valori per definire piu' privilegi. Il privilegio dovrebbe essere uno solo e definito in modo gerarchico. Es.: il priv. 12 contempla anche tutti i privilegi da 1 - 11.

    Se un privilegio e' esclusivo avra' un valore esclusivo superiore al valore dei privilegi condivisi oppure diverso nella struttura (es.: A-12)

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  4. #4
    si ok, ma qui, devo adattarmi a quello che ho trovato.Purtroppo!!
    C'è un'utente che ha due privilegi.. l'10 e 11, inseriti nello stesso campo.
    Comunque da spiegare è troppo lungo, ma... per quanto riguarda quel confronto potresti darmi una mano?
    Devo risolvere, per il momento con quel confronto...Poi si vedrà!
    Se hai un idea per favore, grazie mille....

  5. #5
    se posso volentieri, ma non ho capito bene cosa vorresti fare.


    Vorrei sapere in breve, come posso confrontare le autorizzazioni di 'mario' inserite nelle due tabelle , e fargli vedere gli interventi con autorizzazioni '10 e 11'?
    che vuol dire " fargli vedere"??? Sinceramente non capisco... se in una tabella ha delle autorizzazioni inferiori dell'altra deve vedere i record anche se la sua autorizazione per quella tabella e' minore? oppure ti riferisci proprio ai valori 10,11.... se una autorizzazione minore deve essere del tipo "ubi major minor cessat" ???

    Spiegati in modo piu' chiaro.

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  6. #6
    Ti ringrazio.Certo hai ragione, mo ce provo.
    Allora in pratica, dovrei tramite una ricerca, per UserName e Autorizzazioni, avere la possibilità di estrapolare dei valori, che sono inseriti dentro la tabella Interventi.
    Nelle due tabelle, Interventi e Profili ho un campo ciascuno con lo stesso nome, Autorizzazioni.
    Nel campo Autorizzazioni della tb profili i valori 10-11 sono inseriti proprio come li ho scritti qui.
    Quindi.
    Questa ricerca è condizionata dal fatto che, solo un'utente(di tutti quelli presenti) ha due autorizzazioni(10-11) inserite nel campo autorizzazioni nella tabella profili.

    Nella tabella interventi, però, nel campo autorizzazioni, non troverò i valori (10-11) ma, o solo (10) o solo (11).

    Quindi dovrei, fare un confronto tra questi valori estrapolati dalla tb profili (10-11) e quelli che trovo nella tb interventi.

    Cosi nel caso in cui, l'utente appena loggato è proprio quello con questi valori, potrà visualizzare tutti i record della tb interventi che, nel campo autorizzazioni avranno i valori o (10) oppure (11).

    Spero di essermi spiegato.Grazie millle

  7. #7
    nebuloso.

    Se l'utente loggato ha il valore 10-11 che te frega di vedere cosa c'e' in "interventi.autorizzazioni" se a prescindere da cosa trova puo' vedere tutto?

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  8. #8
    certo..certo!!hai ragione, infatti ho ovviato proprio come hai detto..
    Ti ringrazio...alla prox

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.