![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 125 Pomógł: 1 Dołączył: 4.06.2015 Ostrzeżenie: (0%) ![]() ![]() |
witam,
moim celem jest uzyskanie listy elementów wchodzących wskład jakiejś większej konstrukcji. Element to produkt pojedynczy (nie składa się z innych), których listę z odpowiednią ilością chciałbym uzyskać. Powiedzmy że konstrukcja składa się z: element1 element2 złożenie1 złożenie2 złożenie3 złozenie1 składa się z: element1 element5 złożenie4 złożenie2 skłąda się z: element1 element6 złożenie3 składa się z: element2 element3 element4 złożenie4 skłąda się z: element2 złożenie5 złożenie5 składa się z: element6 element7 Każdej z tych pozycji może być rożna ilość sztuk, a złożoność konstrukcji może być nieskończona (to znaczy w teorii może być wiele poziomów złożeń, choć w praktyce nie ma ich więcej niż 5). Chciałbym i przetrzymywać informację z czego składa się każde złożenie i do każdej konstrukcji wyodrębnić listę samych elementów z ich ilością na 1 szt konstrukcji. Czy najlepszą metodą jest jedna tabela gdzie będą konstrukcje, złożenia i elementy i jedna tabela łączona (ID, ID_element_poziom wyższy, ID_element_poziom_niższy, ilosc)? A najlepszą metodą listy samych elementów jest konstrukcja UNION, która zakłada że złożoność nie przekroczy np. 5 poziomów? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 6 807 Pomógł: 1828 Dołączył: 11.03.2014 Ostrzeżenie: (0%) ![]() ![]() |
Ale czy złożenie o tym samym id może być użyte kilkukrotnie? Nie mam na myśli identyczności zbioru (z1: e1, e2, e3, z2: e1, e2, e3), ale o tą samą krotkę w bazie danych.
Jeśli tak, to abstrahując od problemu, jak zapanujesz nad zarządzaniem złożeniami? Wydaje mi się, że łatwiej budować każdą konstrukcję od podstaw, tj. budując dla niej złożenia i dodawać elementy, niż dobierać złożenia z puli istniejących złożeń. Ktoś tu na forum miał podobny problem. Dotyczył wielościeżkowej ankiety. Ja poleciłem mu budowanie każdej ścieżki odrębnie, nie zważając, że pytania mogą się powtarzać (czyli tworzyć pytania na potrzeby ścieżki niż wybierać z puli pytań). |
|
|
![]() ![]() |
![]() |
Aktualny czas: 13.10.2025 - 12:48 |