Announcement

Collapse
No announcement yet.

2 tabellen zusammenfügen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • 2 tabellen zusammenfügen

    ich haben zwei tabellen:

    Tabelle 1: (260000 sätze)

    1 House
    2 Garden
    3 Animal
    4 Game

    Tabelle 2: (260000 seätze)

    1 10
    2 23
    3 44
    4 99

    Nun will ich beide tabellen zusammenfügen:

    House 10
    Garden 23
    Animal 44
    Game 99

    aber nicht mit einem join, da ich bei den großen Datenmengen eine sehr schlechte Performance habe.
    Wer kennt eine Methode um die Werte einfach so zusammenzufügen?!

    select tab1.stringvalue, tab2.numbervalue
    from tab1, tab2
    where tab1.id = tab2.id;

    Bitte helft mir!!!
    --
    http://www.vic-fontaine.com/

  • #2
    Ist auf den jeweiligen ersten Spalten ein (Primär) Index definiert? Um welche DB handelt es dich den? Normalerweis werden joins mit

    ... from tab1 inner join tab2 on tab1.id = tab2.id

    gebildet? Wieviel RAM steht der DB zur verfügung? Werden die Datensätze u.U. gleich alle zum Client übertragen (Clientseitiger Curser) und wenn ja wie groß ist die Bandbreite und die Latenzzeit?

    Comment


    • #3
      Originally posted by hansdieter
      aber nicht mit einem join, da ich bei den großen Datenmengen eine sehr schlechte Performance habe.
      Wer kennt eine Methode um die Werte einfach so zusammenzufügen?!

      select tab1.stringvalue, tab2.numbervalue
      from tab1, tab2
      where tab1.id = tab2.id;
      dafür sind joins schließlich da..
      und 260000 Datensätze ist nicht gerade viel...

      Comment


      • #4
        Hi,

        ohne JOIN geht das wohl kaum. Dein SQL ist übrigens auch ein JOIN.
        Es gibt noch Datenbanken, wo es den Ausdruck "JOIN" gar nicht gibt und ein JOIN generell so gemacht wird, wie Du es in Deinem POST geschrieben hast. Ich arbeite selbst mit einer solchen.

        Gruß frauwue
        docendo discimus

        Comment


        • #5
          Hallo hansdieter,

          also wenn du zwei Tabellen in einer Abrage relational miteinander verknüpfen - also joinen - möchtest kannst du nur einen JOIN verwenden. Ein anderer Weg ist mir nicht bekannt - wozu auch.
          Wenn du jedoch bei der Kleinigkeit von 260.000 DS mit einem einfachen Join unter Oracle Performance-Probleme bekommst, dann ist das mit Sicherheit nicht normal. Du solltest dir mal den Ausführungspfad der Abfrage ansehen und prüfen wo hier die Performancebremse ist.

          Gruß Falk

          P.S.: Sorry wenn du hier von 4 Leuten die gleiche Antwort bekommst, aber das liegt daran das du diesen Thread mehrfach gepostet hast
          Zuletzt editiert von Falk Prüfer; 19.04.2008, 23:00.
          Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

          Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

          Comment

          Working...
          X