Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Gerarchia tra tabelle

Hybrid View

  1. #1

    Gerarchia tra tabelle

    Ciao ragazzi necessito della vostra sapienza e spero pazienza.
    Cercherò di farmi capire.

    Sto "cercando" di creare un DB per un'azienda la quale si presenta suddivisa in sezioni interne ordinate tra di loro in modo gerarchico; i dipendenti che vi lavorano all'interno, anch'essi ordinati gerarchicamente ma in base alla sezione di appartenenza.
    Mi spiego meglio...
    la sezione n°1 ha sotto di se altre sezioni che chiameremo 2-3-4 che a loro volta possiedono ulteriori sottosezioni che chiameremo 2.1 - 2.2 - 2.3 - 3.1 - 3.2 - 3.3 ecc..
    Ma fin qui nessun problema, relazionato tra loro tramite id_parent...ok?
    Ora i dipendenti andrebbero inseriti nelle varie sezioni che potrebbero essere dalla sezione madre (sez1) alla sezione figlia (sez 2) alla sezione nipote (sez 2.2).
    Quindi il lavoratore che si trova nella sezione 1 sarà, per esempio, il datore di lavoro; il lavoratore che si trova nella sezione 2 sarà, sempre per esempio, il capo reparto e così via.

    ho provato a creare una tab che associa l'ID lavoratore all'ID delle Sezioni...

    tab.jpg

    non riesco a fare una query che mi faccia vedere la situazione finale.

    Grazie in anticipo.

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    A cosa corrispondono le 5 tabelle a sinistra ? (non si vede bene).
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    ciao scusa...
    le tabelle a sinistra sono le sezioni...

    SEZIONE1 - id_sez1, sez1
    SEZIONE2 - id_sez2, id_sez1, sez2
    SEZIONE3 - id_sez3, id_sez2, sez3
    SEZIONE4 - id_sez4, id_sez3, sez4
    SEZIONE5 - id_sez5, id_sez4, sez5
    SEZIONE6 - id_sez6, id_sez5, sez6

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Perché non hai una tabella :

    SEZIONI : id_sezione, sezione

    e una tabella :

    GERARCHIA : livello, id_sezione_madre, id_sezione_figlia
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Sinceramente non ti seguo anche perchè sono un pivellino ancora...
    saresti coì gentile da illuminarmi?

    mi trovo in questa situazione

    ID_postoLavoro
    id_sezione1
    id_sezione2 id_sezione3 id_sezione4 id_sezione5 id_sezione6 incarico
    numero_posto_lavoro
    1 1 NULL NULL NULL NULL NULL Datore di Lavoro 1
    2 1 NULL NULL NULL NULL NULL Dirigente 2
    3 NULL 1 NULL NULL NULL NULL Dirigente 10
    4 NULL NULL 1 NULL NULL NULL Capo Reparto 20
    5 NULL NULL 1 NULL NULL NULL Lavoratore 21
    6 NULL NULL 1 NULL NULL NULL Lavoratore 22
    7 NULL NULL 2 NULL NULL NULL Capo Reparto 30
    8 NULL NULL 2 NULL NULL NULL Lavoratore 31
    9 NULL NULL 2 NULL NULL NULL Lavoratore 32
    Ultima modifica di daniele.pan; 19-01-2017 a 13:46

  6. #6
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Un lavoratore puo' essere associato a più di una sezione ? a più di un posto di lavoro ?

    Perchè l'incarico non viene legato al lavoratore ?
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  7. #7
    Hai perfettamente ragione.. non sono stato assolutamente chiaro.

    Dunque cercherò di esserlo il più possibile:

    6 Tabelle

    SEZIONE1 - id_sez1, sez1
    SEZIONE2 - id_sez2, id_sez1, sez2
    SEZIONE3 - id_sez3, id_sez2, sez3
    SEZIONE4 - id_sez4, id_sez3, sez4
    SEZIONE5 - id_sez5, id_sez4, sez5
    SEZIONE6 - id_sez6, id_sez5, sez6

    E fin qui nessun problema…con la query:

    “SELECT sezione1.sezione1, sezione2.sezione2, sezione3.sezione3, sezione4.sezione4, sezione5.sezione5,
    sezione6.sezione6
    FROM sezione1
    left join sezione1 on sezione1.id_sez1=sezione2.id_sez1.......e via discorrendo”

    Poi c’è una tabella che assegna un nunero o più numeri alle varie sezioni sopracitate e la tabella è questa:

    POSTO_DI_LAVORO – id_po, id_sez1, id_sez2, id_sez3, id_sez4, id_sez5, id_sez6, numero_posto, incarico.

    Quindi alla prima id_po posso assegnare l’ID_sez1 per dire che lui è il capo e le restanti NULL, alla po 2
    assegnare l’ID-sez2 per dire che è il figlio del capo ma il capo_servizio e così via….

    Mi trovo alla fine la tabella che ti ho postato prima.

    Dopodichè un’ulteriore tabella POSIZIONE_LAVORATIVA unirà la tabella POSTO_DI_LAVORO alla tabella DATI_ANAGRAFICI.

    questo perchè ho bisogno di mantenere uno storico...ma poi sopratutto i numeri dei posti di lavoro potrebbero cambiare.

    Un casino.

    HELP PLEASE

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.