access query ==> mysql query

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • access query ==> mysql query

    Hallo zusammen,

    ich bin jetzt mehr zu der Überzeugung gekommen das ich auch in mysql mehr joins verwenden sollte, um lästige zeitraubende zusatzabfragen zu umgehen.

    Nun stehe ich aber vor einem Problem :

    Da die Struktur der Joins doch manchmal etwas unübersichtlich wird beim eigenen schreiben nutze ich zB. Access um die querys zu erstellen. Doch leider kann ich diese Querys ja leider nicht verwenden, sie müssten erst übersetzt werden in mysql.

    Es gibt ja diverse Tools um ganze Datenbanken zu transformieren zB.

    http://www.dbcopy.de/

    allerdings habe ich noch nichts gefunden was einzelne Querys korrekt übersetzt .

    Kennt jemand solche Programme?

  • #2
    wie wär's mit Brain 2003?

    ein richtiges progreamm,dass aus dem access-salat was 100% fehlerfreies, gescheites macht kenn ich nicht

    poste doch mal so nen join
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      hm weiß den keiner solch ein prog?



      hier der access query:

      Code:
      SELECT 
      Sum(trainer_spieler_tore.tor) AS Summevontor, 
      trainer_spieler.name, 
      system_ligen.flagge, 
      trainer_main.mannschaftsname, 
      trainer_spieler_tore.spieler_id
      
      FROM 
      (trainer_spieler_tore RIGHT JOIN (trainer_spieler 
      LEFT JOIN system_ligen ON 
      trainer_spieler.nationalität = system_ligen.liga) ON trainer_spieler_tore.spieler_id = trainer_spieler.lfdnr) 
      RIGHT JOIN trainer_main ON trainer_spieler.besitzer = trainer_main.user_id
      
      WHERE 
      (((trainer_spieler_tore.saison)=1) 
      AND ((trainer_spieler_tore.spielart)="liga") 
      AND ((trainer_main.land)="Deutschland") 
      AND ((trainer_main.liga)=1))
      
      GROUP BY 
      trainer_spieler.name, 
      system_ligen.flagge, 
      trainer_main.mannschaftsname, 
      trainer_spieler_tore.spieler_id
      
      ORDER BY 
      Sum(trainer_spieler_tore.tor) DESC;

      Kommentar


      • #4
        hm weiß den keiner solch ein prog?
        happy hat es doch schon gepostet. Brain 2003. in fast drei monaten kommt die nachfolgeversion. Brain 2004. aber du brauchst nicht so lange warten. die bisher aktuelle version tut es auch.


        so. ich habe mal deine query angesehen. ich kann keine groben fehler finden. hast du überhaupt mal ausprobiert, ob die query in mysql funktioniert? welche fehler kommen da?
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          klar habe ich es ausprobiert

          Leider trat dieser Fehler auf, wie gesagt liegt an den joins :-(

          You have an error in your SQL syntax near '(trainer_spieler LEFT JOIN system_ligen ON trainer_spieler.nationalität=system_l' at line 11

          könntet ihr dann nochmal einen link zu dem brain geben?

          Kommentar


          • #6
            poste doch mal die datenbankstruktur und wie die tabellen verknüpft sind, das macht die sache einfacher

            OffTopic:
            Original geschrieben von oli007
            könntet ihr dann nochmal einen link zu dem brain geben?
            hardlink:
            - 1 hand zur faust ballen
            - zeigefinger dieser hand ausstrecken
            - mit besagtem zeigefinger ins auge stechen, bis es durchstoßen is
            - weiter ins kopfinnere vordringen
            - da sollte das porogramm sein
            -
            Ich denke, also bin ich. - Einige sind trotzdem...

            Kommentar


            • #7
              OffTopic:
              und hier noch der softlink dazu ...
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #8
                hehe wusste ichs doch :-) ihr seid nun schuld das ich eine blinentastatur benutzen muss

                aber spaß beiseite...

                hier mal die tabellen aufgelistet:

                Code:
                #
                # Tabellenstruktur für Tabelle `system_ligen`
                #
                  id int(9) NOT NULL auto_increment,
                  liga text NOT NULL,
                  flagge text NOT NULL
                  PRIMARY KEY  (id)
                # --------------------------------------------------------
                
                #
                # Tabellenstruktur für Tabelle `trainer_main`
                #
                  user_id int(9) NOT NULL auto_increment,
                  mannschaftsname text NOT NULL,
                  land text NOT NULL,
                  liga tinyint(1) NOT NULL default '1',
                  ligazweig char(1) NOT NULL default 'a',
                  PRIMARY KEY  (user_id),
                  UNIQUE KEY user_id (user_id)
                
                # --------------------------------------------------------
                
                #
                # Tabellenstruktur für Tabelle `trainer_spieler`
                #
                
                  lfd_nr bigint(7) NOT NULL auto_increment,
                  name text NOT NULL,
                  besitzer int(9) default NULL,
                  PRIMARY KEY  (lfd_nr),
                  UNIQUE KEY lfd_nr (lfd_nr)
                # --------------------------------------------------------
                
                #
                # Tabellenstruktur für Tabelle `trainer_spieler_tore`
                #
                
                  id int(7) unsigned NOT NULL auto_increment,
                  date_id tinyint(2) unsigned NOT NULL default '0',
                  spieler_id int(7) unsigned NOT NULL default '0',
                  team_id int(7) unsigned NOT NULL default '0',
                  tor char(1) NOT NULL default '0',
                  PRIMARY KEY  (id)
                Zuletzt geändert von oli007; 06.10.2003, 07:43.

                Kommentar


                • #9
                  die tabelle "system_ligen" is kaputt...

                  und wie sind die tabellen verknüpft?
                  Ich denke, also bin ich. - Einige sind trotzdem...

                  Kommentar


                  • #10
                    Wieso ist die Tabelle kaputt?

                    Ich habe das wichtige hier herein kopiert, die tables sind natürlich noch größer, habe oben aber kurz noch die id und den key eingefügt ...

                    Was für Verknüpfungen meinst du denn nun? Die Tabellen haben keine Verknüpfungen indem Sinne wie ich es von access kenne ...

                    Also sind da dann wohl keine? Muss ich bei dem join wieder was mit "Using" machen?

                    Kommentar


                    • #11
                      du hast doch in den tabellen spalten die als fremdschlüssel fungieren, das müsste man noch wissen, da es die sache doch ungemein erleichtern

                      p.s. was willst du eigentlich genau auslesen?
                      Ich denke, also bin ich. - Einige sind trotzdem...

                      Kommentar


                      • #12
                        Auslesen das was oben bereits im Select steht:

                        Code:
                        Sum(trainer_spieler_tore.tor) AS Summevontor, 
                        trainer_spieler.name, 
                        system_ligen.flagge, 
                        trainer_main.mannschaftsname, 
                        trainer_spieler_tore.spieler_id
                        Fremdschlüssel sind da soweit keine vorhanden oder aber unwichtig, es bezieht sich keine auf die erwähnten Spalten. Ich glaube sogar dort sind wirklich keine, gehen wir erstmal davon aus ...

                        Kommentar


                        • #13
                          mit "als fremdschlüssel fungieren" mein ich spalten, mit denen du beziehungen zwischen den tabellen herstellst

                          irgendwie hängen die tabellen ja zusammen und das wie ist von interesse
                          Ich denke, also bin ich. - Einige sind trotzdem...

                          Kommentar


                          • #14
                            Ich nehme mal an du meinst die betreffenden Tabellen oben wie diese zusammenhängen? Denn andere Fremdschlüssel wären doch irrelevant oder?

                            Also ich glaube das müssten alle sein

                            trainer_spieler.besitzer = trainer_main.user_id
                            trainer_spieler_tore.spieler_id = trainer_spieler.lfdnr
                            trainer_spieler.nationalität = system_ligen.liga

                            draus hat access wie gesagt dies hier gefolgert ==>
                            Code:
                            FROM 
                            (trainer_spieler_tore RIGHT JOIN (trainer_spieler 
                            LEFT JOIN system_ligen ON 
                            trainer_spieler.nationalität = system_ligen.liga) ON trainer_spieler_tore.spieler_id = trainer_spieler.lfdnr) 
                            RIGHT JOIN trainer_main ON trainer_spieler.besitzer = trainer_main.user_id
                            mysql progs wie navicat u.ä. machen daraus zwei outer lefts!!

                            Kommentar


                            • #15
                              Original geschrieben von oli007
                              mysql progs wie navicat u.ä. machen daraus zwei outer lefts!!
                              hast dus damit mal probiert?
                              was kommt da raus?

                              wenn's passt müssen wir uns ja nicht den kopf zerbrechen
                              Ich denke, also bin ich. - Einige sind trotzdem...

                              Kommentar

                              Lädt...
                              X