Struktur für folgende Daten

This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

  • Struktur für folgende Daten

    Howdy,

    ich steh auf dem Schlauch. Mit fallen nur komplizierte, unhandlich Strukturen für folgendes Problem ein:

    ich habe Hauptkategorien und Unterkategorien. 10 Haupt und 5 Unter.

    Jeder Nutzer kann für sich selbst eine Individuelle Gewichtung einstellen.

    Beispiel: Hauptkategorie (A) bekommt Gewicht 2
    Den Unterkategorien zu (A), nämlich [1] bis [5], werden auch jeweils ein Gewicht zugeordnet.

    • [1] - 2
    • [2] - 1
    • [3] - 0
    • [4] - 3
    • [5] - 0


    Hauptkategorie (B) bekommt Gewicht 3
    Den Unterkategorien zu (B), werden folgende Gewichte zugeordnet.

    • [1] - 3
    • [2] - 3
    • [3] - 3
    • [4] - 1
    • [5] - 1


    Gewichte können nur 0,1,2 oder 3 sein. Mathematisch: Natürliche Zahlen im Intervall [0,1].

    Wenn so wie hier den Hauptkategorien (C) bis (J) keine Gewichtungskonfiguration zugewiesen wird, sollen sie und ihre Unterkategorien die Gewichtung 0 haben.


    In diesem Schema gibt es natürlich nur endlich viele Kombinationsmöglichkeiten.


    Ich komme nur auf folgende leidig Struktur:

    Zuerstmal die Konfigurationen der User:

    Tabelle configurations
    configId
    userId

    Dann die möglichen Gewichte:

    Tabelle mainWeights
    mainWeightId
    mainCatId
    weight

    Tabelle subWeights
    subWeightId
    subCatId
    weight

    Und jetzt ein mapping vornehmen

    mainMapping
    mainMappingId
    configId
    mainWeightId

    subMapping
    subMappingId
    mainMappingId
    subWeightId


    das geht ganz sicher einfacher. ich stehe nur gerade auf dem schlauch. Wäre schön, wenn jemand eine Idee hätte.

    Grüße,

    EHW
  • Also wenn ich dein problem richtig gelesen habe hast du das Problem das du nicht weisst wie du die DB anlegen sollst:

    Tabelle:
    -Feld

    hauptkategorie_liste:
    -id
    -hauptkategorie_name

    subkategorie_liste:
    -id
    -subkategorie_name

    kategorie_connect:
    -id
    -hauptkategorie_id
    -subkategorie_id

    dnan das ganze verknüpfen mit join je nachdem was du ausgegeben haben willst.

    in der connect tabelle kannst du dann so verbinden (haupt=buchstabe, sub=zahl)

    a1
    a2
    a4
    c5
    c2
    l18

    usw. ...

    also das wäre meine idee dazu^^