Ich habe mehrere Kategorien, die ich in einer Datenbank speichern und sie Benutzern präsentieren muss. Jeder hat ein Minimum von drei bis maximal vier Bereichen. Zum Beispiel:Tabellenentwurf zum Speichern mehrerer Bereiche in der MySQL-Datenbank
id | category_name | Range A | Range B | Range C | Range D
--------------------------------------------------------------------
1 | Category1 | 0 - 200 | 200 - 450 | 450 - 750 | 750+
2 | Category2 | 0 - 300 | 300 - 600 | 600+ |
3 | Category3 | 0 - 250 | 250 - 350 | 350 - 550 | 550+
Wenn ein Benutzer eine Kategorie auswählt, sollte er einen bestimmten Bereich auswählen, der in der Datenbank gespeichert wird.
name | category_id | category_range
------------------------------------------
niceuser30 | 2 | A
hellouser1 | 1 | B
Erwägung, dass:
- Bereiche können keine Lücken haben zwischen ihnen (zB wenn Bereich A von 100 bis 200 geht, Bereich B must Beginn ab 200)
- jeder Bereich muss Start von 0
- jeder Bereich muss offen (oder halboffen) sein
Was wäre das beste Design für eine Tabelle, um diese Werte zu halten?
Ich dachte an so etwas wie diese
id | category_name | range_a | range_b | range_c | range_d
-------------------------------------------------------------
1 | Category1 | 1500 | 3000 | 5000 | 5000
2 | Category2 | 500 | 1000 | 1000 |
verwenden und dann die Ausgabe erarbeiten, bevor sie an den Benutzer dienen (wenn zwei Bereiche gleich sind der Code wird die letzten „ad infinitum“, so die der erste wäre "0 - 1500, 1500 - 3000, 3000 - 5000, 5000+"), aber es scheint schmutzig und anfällig für Fehler.
Dies kann nicht ausreichend beantwortet werden ohne zu wissen, welche Anfragen auf die Registerkarte angewendet werden le. –