Kombinatorik-Problem

25/01/2010 - 10:50 von Stefan Wirrer | Report spam
Hallo,

ich habe ein Kombinatorik-Problem.
Evtl. kann mich jmd.in die richtige Richtung schubsen ;-)

Fall 1: n-Teile, (fast) alle Kombinationen:
X Y Z
1 0 0
0 1 0
0 0 1
1 1 0
1 0 1
0 1 1
1 1 1
Die Kombinationen erzeugen ist kein Problem.
Hier wird nur 0 0 0 nicht benötigt.

Fall 2: m-Teile, mit Ausnahmen:
A a B b
1 0 0 0
0 1 0 0
1 0 1 0
1 0 0 1
0 1 0 1
A, a (und B, b) gleiches Teil mit unterschiedl. Auspràgung.
A also nicht mit a kombinierbar (gleiches auch für B, b).
a ist auch nicht mit B kombinierbar.

Wie kann man sowas Datenbanktechnisch verwalten?
Das ganze ist natürlich dynamisch ...
Es ist auch A a B b C oder A a D d oder C E e F oder ...
vorstellstellbar.

Auf Anregungen hofft
Stefan
 

Lesen sie die antworten

#1 Josef Poetzl
25/01/2010 - 11:23 | Warnen spam
Hallo!

Stefan Wirrer schrieb:
[...]
Fall 2: m-Teile, mit Ausnahmen:
A a B b
1 0 0 0
0 1 0 0
1 0 1 0
1 0 0 1
0 1 0 1
A, a (und B, b) gleiches Teil mit unterschiedl. Auspràgung.
A also nicht mit a kombinierbar (gleiches auch für B, b).
a ist auch nicht mit B kombinierbar.



Da fehlen aber noch Sàtze, oder?

A a B b
0 0 1 0
0 0 0 1


Wie kann man sowas Datenbanktechnisch verwalten?
Das ganze ist natürlich dynamisch ...



Eine dynamische Variante (mit unveràndertem SQL-Statement) kenne ich
keine.

Ich hàtte es so versucht:
Tabelle mit 2 Datensàtzen (0, 1)

select
A.id as A, B.id as a_, C.id as B, D.id as b_
from
Tabelle A,
Tabelle B,
Tabelle C,
Tabelle D
where
(A.id = 0 OR A.ID <> B.id)
AND
(C.id = 0 OR C.ID <> D.id)
AND
(B.id = 0 OR B.ID <> C.id)
AND
(A.id = 1 OR B.id = 1 OR C.id = 1 OR D.id = 1)


Für andere Kombinationen müsste man jedoch immer die SQL-Anweisung
anpassen.


mfg
Josef

EPT: (Access Error Prevention Table) http://access.joposol.com/
FAQ: (Access-FAQ von Karl Donaubauer) http://www.donkarl.com/

Ähnliche fragen