mysql 2 tabellen, tabelle1 immer tabelle2 muss passen

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/mysql_2_tabellen_tabelle1_immer_tabelle2_muss_pass_165079/page_1 - zur Vollversion wechseln!


bBU.CyTrobIc schrieb am 29.06.2006 um 16:26

Hi,

ich habe 2 Mysql Tabellen und möcht folgendes machen:

TabelleA soll immer komplett ausgegeben werden.

Von TabelleB soll das Feld Name ausgegeben werden wenn die IdNr von TabelleB in dem Textfeld istDrin von TabelleA vorkommt.

möglichkeiten ? :rolleyes:


semteX schrieb am 29.06.2006 um 16:33

SELECT a.blalal, b.hihi FROM a LEFT JOIN b ON b.IdNr=a.istDrin

oder steht im istDrin mehr als nur 1 ID? Wenn das so ist würd ich das datenbank design STARK überdenken.


mat schrieb am 29.06.2006 um 16:35

würde ich mit einer extra tabelle lösen, die beim speichern des textfelds aktualisiert wird.


semteX schrieb am 29.06.2006 um 16:37

wenns so gemeint ist wie mat das jetzt meint dann meine ich, dass das die beste lösung wär, weil so würd das ding wenigstens einigermaßen wieder den normalformen entsprechen *g* ;)

aber jeder wie er meint.


bBU.CyTrobIc schrieb am 29.06.2006 um 17:02

naja ich ordne da Kräne der Kaimauer zu (hafensimulation) und an einer kaimauer stehen mehrere Kräne aber die Kräne können auch an verschiedenen Kaimauern zum einsatz kommen. Daher steht im istDrin Feld mehr als eine ID immer mit leerzeichen getrennt. Wie würdest du das machen ?


semteX schrieb am 29.06.2006 um 17:08

das ist ne klassische m zu n beziehung... wie mat schon sagte:

du machst ne tabelle mit:

kaimauer | kran

beides sind deine primärschlüssel.

dann schaut das so aus:

Code:
kaimauer  |  kran
1            1
1            2
1            3
2            4
2            3
3            5
Dadurch hast du eine kaimauer mit mehr kränen und einen kran mit mehr kaimauern (in dem fall wärs kran 3)


bBU.CyTrobIc schrieb am 29.06.2006 um 19:53

aber dann hab ich ja hunderte einträge in der m:n tabelle


mat schrieb am 29.06.2006 um 20:08

und das ist um einiges schneller als irgendein query mit einer stringfunktion, die für dich sowieso nicht in frage kommt.


kleinerChemiker schrieb am 29.06.2006 um 20:09

dafür gibts ja datenbanken


bBU.CyTrobIc schrieb am 29.06.2006 um 21:31

ok ich werds mal versuchen , danke für die hilfe :)


that schrieb am 29.06.2006 um 22:43

Zitat von bBU.CyTrobIc
aber dann hab ich ja hunderte einträge in der m:n tabelle

Derartige Bedenken kannst du getrost verschieben, bis du hunderte Millionen Einträge in der Tabelle hast. :)


bBU.CyTrobIc schrieb am 29.06.2006 um 23:25

naja ok, wie rechne ich das eigentlich:

10 kaimauern : 10 kränen

sind doch 10^10 möglichkeiten oder ?
also 10.000.000.000 sätze ?
oder nur 10*10 = 100 ?


that schrieb am 29.06.2006 um 23:29

Zitat von bBU.CyTrobIc
naja ok, wie rechne ich das eigentlich:

10 kaimauern : 10 kränen

sind doch 10^10 möglichkeiten oder ?
also 10.000.000.000 sätze ?
oder nur 10*10 = 100 ?

Probiers mit kleineren Zahlen aus, dann ist es relativ einfach. Wieviele Möglichkeiten gibt es mit 2 Kaimauern und 2 Kränen? Wieviele mit 3 und 3? Und welche mathematische Funktion ist das?


Luzandro schrieb am 30.06.2006 um 07:13

Zitat von bBU.CyTrobIc
naja ok, wie rechne ich das eigentlich:

10 kaimauern : 10 kränen

sind doch 10^10 möglichkeiten oder ?
also 10.000.000.000 sätze ?
oder nur 10*10 = 100 ?

du brauchst dir das ganze ja nur etwa so vorstellen
Code:
  1  2  3
A    X
B    X  X
C X  X
wobei du eben nur die "koordinaten" dieser schnittpunkte speicherst


bBU.CyTrobIc schrieb am 30.06.2006 um 09:15

also 10*10 ;)




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025